*SQL Server 2005 [#s63c05ef]


#contents();

**テーブル一覧の取得 [#v4551ea0]
 SELECT *
   FROM INFORMATION_SCHEMA.TABLES

**テーブルのカラム一覧の取得 [#r86a0c21]
 SELECT *
   FROM INFORMATION_SCHEMA.COLUMNS
  WHERE TABLE_NAME = 'テーブル名'

**任意のカラムを含むテーブルの列挙 [#nb746d32]
 SELECT TABLE_NAME
   FROM INFORMATION_SCHEMA.COLUMNS
  WHERE COLUMN_NAME = 'カラム名'

**ID列とレプリケーション [#q8e69a0a]
2台のSQLサーバをマージレプリケーション構成で使用していたときの話。
ID列を含むテーブルに対して大量にINSERT文を発行したところ、エラーが発生してしまった。どうやら一度にINSERTできる数に制限がかかっているらしい。

[ローカルパブリケーション]→[データベース名]→右クリック[プロパティ]→
ページの選択[アーティクル]→[宛先マスタ]→[宛先コード]→
[アーティクルのプロパティ]→
[反転表示されたテーブル アーティクルのプロパティを設定]
[サブスクライバの範囲サイズ]

ここでサイズの値を変更することで、制限数を任意に変更することが出来る。

:ID 列のレプリケート|http://msdn.microsoft.com/ja-jp/library/ms152543(SQL.90).aspx


**改行コードを記述する [#r2b560a3]
-CRLF
 SELECT char(13) + char(10)

**バージョンを取得する [#l7d4deb1]
-組み込み定数@@Versionを参照する。
 SELECT @@Version
 結果:
 Microsoft SQL Server 2005 - 9.00.3054.00 (Intel X86)   Mar 23 2007 16:28:52   Copyright (c) 1988-2005 Microsoft Corporation  Developer Edition on Windows NT 5.2 (Build 3790: Service Pack 2)

**データベースサイズの見積もり [#w0fff0ce]
:データベース サイズの見積もり|
http://msdn.microsoft.com/ja-jp/library/ms187445(SQL.90).aspx


**日付のフォーマット [#hea9b61f]
-convert関数を使用する。
-http://msdn.microsoft.com/ja-jp/library/ms187928.aspx

***個別の要素を取り出す [#ed6e1883]
-datename関数を用いると、年月日などを個別に取得できる。
 select getdate(),
        datename(year, getdate()), 
        datename(month, getdate()), 
        datename(day, getdate()),
        datename(hour, getdate()),
        datename(minute, getdate()),
        datename(second, getdate()),
        datename(millisecond, getdate())
 
 2009-06-17 10:17:37.137	2009	06	17	10	17	37	137
 
 (1 行処理されました)

:他の要素についてはURL参照|
http://technet.microsoft.com/ja-jp/library/ms174395.aspx

***個別の要素 [#hb93103e]
-1ヵ月後の日付などを得るには、dateadd関数を使用する。
 SELECT dateadd(month, 1, getdate())

**DateTime型の範囲 [#p98baa04]
-日付範囲:1753 年 1 月 1 日〜 9999 年 12 月 31 日
-時刻範囲:00:00:00 〜 23:59:59.997
-既定値:1900-01-01 00:00:00


トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS