SE の雑記

SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿

Author Archive

SQL Server 2014 CU5 の SSMS の SQL Database v12 対応は英語版に限定されているようです

leave a comment

SQL Server 2014 CU5 の SSMS で SQL Database v12 対応がされたことについていくつかアナウンスがされています。
# ちなみに v12 のコードネームは Sterling だそうです。

SQL Server 2014 Management Studio – updated support for the latest Azure SQL Database Update V12 (preview)

これらについては、CU5 のリリースノートにも記載がされています。
2014 の SQL Server 用の累積的な更新プログラム パッケージ 5

3708148
Sterling での機能のオブジェクト エクスプ ローラーには、次のノードが追加されます。

  • ストレージ ([データベース] ノード)
  • アセンブリ (データベースのノード プログラミング->)
  • 規則 (プログラミング-> データベース ノード)
  • 既定値 (-> のプログラミングのデータベース ノード)
  • 計画ガイド (-> プログラミングのデータベース ノード)
  • シーケンス (-> プログラミングのデータベース ノード)
  • 集計関数 (関数-> のデータベース ノード)
  • アプリケーション ロール (セキュリティ ロール->-> データベース ノード)
  • ユーザー定義のオブジェクト型 (CLR の型) (-> 型-> のプログラミングのデータベース ノード)
  • XML スキーマ コレクション (-> 型-> のプログラミングのデータベース ノード)

SQL サービス

英語版の SSMS で接続をすると以下のように今回のアップデートが利用できるのですが、日本語版の SSMS で接続した場合には、従来通りの内容となっていました。
imageimage

英語版だけしか対応していないのかなと思って、Connect でフィードバックしてみたところ、

Thank you for submitting this feedback. Unfortunately, CU5, like most Cumulative Updates, is English only.

 

との回答をいただくことができました。
CU5 で追加されたものが使えるのは、現状英語版だけのようですね。

Written by Masayuki.Ozawa

12月 22nd, 2014 at 3:50 pm

Posted in SQL Database

Tagged with

SQL Database v12 Preview で SQLCLR を使用する

leave a comment

SQL Database の v12 Preview では、SQLCLR を使用することができるようになりました。
ということで少し使ってみたいと思います。

私はコードを書くのが苦手なので、TaaS せんせーが後日素晴らしい SQLCLR のアセンブリを作ってくれると思います。

あと、えろす師匠、鰻奢ってください。

Read the rest of this entry »

Written by Masayuki.Ozawa

12月 21st, 2014 at 11:29 pm

Posted in SQL Database

Tagged with

SQL Server / SQL Database の IDENTITY プロパティの連番の保証性について

leave a comment

twitter で質問をいただいたので少しまとめてみたいと思います。

SQL Server  / SQL Database では、数値型の連番を簡単に設定するためのプロパティとして IDENTITY があります。
これを設定しておくと自動的に連番が付与されますが、サーバーの再起動等が発生した場合には連番は保証されません。

これについては
IDENTITY (プロパティ) (Transact-SQL)
IDENTITY プロパティ使用時の動作について
に記載されています。

SQL Server 2012 以降は、IDENTITY の説明として以下が追加されています。

サーバーの再起動または他のエラーが発生した後の連続した値: SQL Server では、パフォーマンス上の理由から ID 値をキャッシュすることがあります。割り当てられた値の一部は、データベースの障害やサーバーの再起動が発生したときに失われることがあります。  その結果、挿入時に非連続的な ID 値が生成される場合があります。 非連続的な値が許可されない場合、アプリケーションでは、シーケンス ジェネレーターを NOCACHE オプションを指定して使用するか独自のメカニズムを使用して、キー値を生成する必要があります。

この動作について少し見ていきたいと思います。

Read the rest of this entry »

Written by Masayuki.Ozawa

12月 21st, 2014 at 6:22 pm

SQL Server における可変長文字列の末尾の空白について

one comment

SQL Server の可変長文字列 (varchar / nvarchar) では、

  • ‘AAAA’

というような文字列をデータとして登録した場合、可変長文字列では

  • ‘AAAA’

というように設定されている文字列のみが登録されます。

char(10) というような固定長文字列型にデータを入れた場合には、

  • ‘AAAA      ‘

といった形で空白が付与されて固定長文字列として処理がされます。
それでは、

  • ‘AAAA   ‘

というようなデータに空白が含まれるものを入れた場合にはどうなるかを本投稿で見ていきたいと思います。

Read the rest of this entry »

Written by Masayuki.Ozawa

12月 20th, 2014 at 5:36 pm

Posted in SQL Server

Tagged with

SQL Server 2014 を使用したメンテナンスプランの移行方法について

leave a comment

SQL Server 2014 としていますが、SQL Server 2005 SP1 以降であれば、おそらく使えるのではと思っています。
# SQL Server 2008 は CU3 以降かもしれませんが…。

以下の情報も参考になります。

Automating Deployment of SQL Server Maintenance Plans
SSIS package query
SSIS Package Extract from MSDB
How to Transfer(Copy) Maintenance Plans from One Server to other???….

Read the rest of this entry »

Written by Masayuki.Ozawa

12月 17th, 2014 at 8:58 pm

Posted in SQL Server

Tagged with

SQL Server のバックアップのリストアと互換性レベルの整理

leave a comment

SQL Server 2014 データベース エンジンの非推奨機能SQL Server ではバックアップのリストアに下位互換があり、リストアしようとするバックアップを取得した SQL Server のバージョンにも依存するのですが、上位のバージョンでは下位のバージョンのバックアップをリストすることが可能です。
上位互換はないため、新しいバージョンで取得したバックアップを下位のバージョンにリストアすることはできません。
また、デタッチ / アタッチシナリオを利用して、データベースを新しいバージョンの SQL Server にアタッチした場合、アタッチしたタイミングでデータベースの内部のバージョンアップが行われています。
そのため、新しいバージョンでアタッチしたデータベースを下位のバージョンの SQL Server にアタッチするということもできません。

新しいバージョンに移行をした際の、切り戻し方法としてはデータベースのバックアップ / リストア、デタッチ / アタッチではなく、データベースのインポート / エクスポートを用いて実施する必要があります。

基本的には直近三世代のバージョンの SQL Server のバックアップをリストアすることが可能となっており、それ以前の世代のバックアップについてはリストアをすることができません。

簡単にではありますが、バックアップ / リストアについてまとめてみたいと思います。

本投稿では、

  • SQL Server 2000
  • SQL Server 2005
  • SQL Server 2008 R2

で取得したバックアップを

  • SQL Server 2008 R2
  • SQL Server 2012
  • SQL Server 2014

でリストアするパターンについて記述しています。

Read the rest of this entry »

Written by Masayuki.Ozawa

12月 14th, 2014 at 11:19 am

Posted in SQL Server

Tagged with

SQL Server の TRUNCATE TABLE は何を実行しているか

leave a comment

テーブルのデータを瞬時に削除する方法として、TRUNCATE TABLE があります。

TRUNCATE TABLE (Transact-SQL)

DELETE との違いは以下になります。

DELETE ステートメントは、一度に 1 行ずつ削除し、削除した各行のエントリをトランザクション ログに記録します。  TRUNCATE TABLE は、テーブル データを格納するのに使用するデータ ページの割り当てを解除することによってデータを削除し、ページの割り当ての解除だけをトランザクション ログに記録します。

ということで、TRUNCATE TABLE が何をやっているかをざっくりと。

Read the rest of this entry »

Written by Masayuki.Ozawa

12月 14th, 2014 at 12:10 am

Posted in SQL Server

Tagged with

SQL Database V12 Preview のパーティショニングを使ってみる

leave a comment

SQL Database V12 Preview では新しい機能としてテーブルのパーティショニングがサポートされました。
この機能を少し試してみたいと思います。
Read the rest of this entry »

Written by Masayuki.Ozawa

12月 13th, 2014 at 8:31 pm

Posted in SQL Database

Tagged with

SQL Database の V12 Preview の提供が開始されました

leave a comment

SQL Database の次期アップデートである v12 の提供が Preview ですが本日から開始されました。
ほかにもいろいろとアップデートがあるようですが、情報を追うためのメモを。

基本は以下を見てもらうとよろしいかと思います。

What’s new in the Latest SQL Database Update V12 (preview) ←おすすめ
Plan and prepare to upgrade to the Latest SQL Database Update V12 (preview)  ←おすすめ
Public preview: Azure SQL Database update
Microsoft Strengthens Data Platform with SQL Database and Big Data Appliance Updates, Adds New Java SDK for its NoSQL Service
Azure: Premium Storage, RemoteApp, SQL Database Update, Live Media Streaming, Search and More
Preview Available for Latest Version of Azure SQL Database
SQL Database Pricing

Read the rest of this entry »

Written by Masayuki.Ozawa

12月 12th, 2014 at 8:22 am

Posted in SQL Database

Tagged with

SQL Server のクエリチューニングの参考情報

leave a comment

SQL Server のクエリチューニングをする際に参考になる情報のメモを。

Read the rest of this entry »

Written by Masayuki.Ozawa

12月 10th, 2014 at 9:26 pm

Posted in SQL Server

Tagged with