SQLServerの新機能1 - catsの出来る事からこつこつと…
SQLServer2008の新機能1
色々なページで載ってるとは思いますが、
ここでもSQLServer2008の新機能の一部を載せておきます。
DECLAREの初期値代入
SQLServer2008では、DECLAREを宣言する際に初期値を代入出来ます。
-------------------------------例-------------------------------
DECLARE @STR varchar(50) = 'test'
DECLARE @CNT int = 0
インクリメント
SQLServer2008では、インクリメントがサポートされました。
というか、今まで何で無かったんだろうって思います^^;。
-------------------------------例-------------------------------
DECLARE @CNT int = 1
WHILE @CNT <= 10
BEGIN
/*ここに必要な処理を入れます*/
SET @CNT += 1
END
複数をINSERT
SQLServer2008では、1つのINSERTステートメントで複数行挿入出来る様になりました。
使ってみると意外と便利です。
-------------------------------例-------------------------------
--テーブル名が「Table_1」
--列が「F1,F2,F3」とします。
INSERT INTO Table_1
VALUES ('AA','BB','CC'),('DDD','EE','FF'),('GG','HH','II')
新しいデータ型
SQLServer2008では、新しく4つのデータ型が追加されました。
データ型 | バイト数 | 単 位 | 備 考 |
date | 日 | 3byte | 日にちのデータ型です。 日付が必要で時間の必要の無い時などに使用しましょう。 |
time(0〜7) | 100ナノ秒 | time(7)で5byte | 時間のデータ型です。 100ナノ秒まで格納出来るため、datetimeより精度が高いです。 |
datetime2 | 100ナノ秒 | datetime(7)で8byte | 日にち・時間のデータ型です。 100ナノ秒まで格納出来るため、datetimeより精度が高いです。 |
datetimeoffset | 100ナノ秒 | datetimeoffset(7)で10byte | 日にち・時間のデータ型です。 タイムゾーンのオフセットを格納できます。 |