戦艦ゆにっき

SQL Server & Hyper-V & Windows Phone 7をメインにしたBlogです

更新情報をメールで受け取る

リンク集

勉強会

7月 2009 - 投稿

SQL Server Management Studioのオプションその1

SQL Server Management Studioにどのようなオプションがあり、オプションによってどのような変化が発生するのかを見ていきたいと思います。

1回目は、「結果をグリッドに表示する」の項目にあるオプションを見ていきます。

  • SQL Server Management Studioを起動し、メニューバーから[ツール]→[オプション]を選択します。
    20090726200540
  • 左側ペインから、[クエリ結果]のツリーを展開し、[SQL Server]のツリーを展開し、[結果をグリッドに表示]を選択します。
    20090726200728

    20090726200945

結果をグリッドに表示する」の項目には、次のオプションが用意されています。

  • 結果セットにクエリを含める
  • 結果のコピーまたは保存時に列のヘッダーを含める
  • csvへの結果保存時に、一覧の区切り文字を含む文字列を引用符で囲む
  • 実行後に結果を破棄する
  • 結果を別のタブに表示する
    • クエリ実行後に「結果」タブに切替える
  • 取得される最大文字数
    • XML以外のデータ:65535(規定値)
    • XMデータ:2MB(規定値)

20090726201328

 

結果セットにクエリを含める

クエリを実行したときに表示される「メッセージ」タブに実行したクエリが追加されるようになります。

通常、クエリを実行すると下のような表示になります。

20090726201610 20090726201654

オプションを有効にすると次のようになります。

20090726201745 20090726201755

「メッセージ」タブに、元の処理結果に加えて、クエリも表示されるようになりました。

※尚、オプションの設定は、クエリウィンドウを開いたときのオプションを継承します。一度開いたクエリウィンドウは、開いたときのオプションを維持します。例えば、通常の結果を表示させた後、オプションを変更して、再度同じクエリウィンドウで実行してもオプション変更は反映されません。オプション変更が反映されるのは反映した後に新しく開いたウィンドウからです。

結果のコピーまたは保存時に列のヘッダーを含める

実行結果を保存する時に、自動的に保存データにヘッダー列が付加されるようになります。

「結果」タブのグリッドで右クリックをしコンテキストメニューを表示させると、結果を保存する項目が表示されます。

20090726202458

通常、「コピー」や「結果に名前を付けて保存」を選択すると、選択されたデータのみがコピー、保存されます。列ヘッダーは含まれていません。

コピーすると↓のようなデータがコピーされます。

1             yamada   
2             tarou    
3             yamashita

保存すると下のようなデータが作成されます。

1             yamada   
2             tarou    
3             yamashita

オプションを有効にすると次のように、ヘッダーが含まれるようになります。

コピーすると↓のようなデータがコピーされます。

id    name
1             yamada   
2             tarou    
3             yamashita

保存すると下のようなデータが作成されます。

id    name
1             yamada   
2             tarou    
3             yamashita

 

ちょっと脱線しますが、空のテーブル結果で右クリックをするとつぎのような表示になります。

20090726203115

、「コピー」や「結果に名前を付けて保存」ができる状態ではありません。そして、「ヘッダー付きでコピー」は選択できる状態にありますが・・・・これについては、けろ-みおさんの記事を参照してください。

ちなみに今回の評価環境は、Microsoft SQL Server 2008 (RTM) - 10.0.1600.22 (X64) なので、ばっちり再現出来ちゃいますσ(—#)アタマイターッ

csvへの結果保存時に、一覧の区切り文字を含む文字列を引用符で囲む

保存やコピーしたときのデフォルトのcsv区切り文字は「,」になっています。抽出データに「,」があるとき引用符で囲われるようになります。

↓のように3行目のname列に「,」があるデータを用意しました。

20090726204252

通常「結果に名前を付けて保存」を選択すると↓のようになります。

id,name
1,yamada
2,suneo
3,nobita,nobi

オプションを有効にすると↓のようになります。

id,name
1,yamada
2,suneo
3,"nobita,nobi"

引用符で囲まれていますね。

ちなみに、「コピー」すると↓のようになります。

id    name
1    yamada
2    suneo
3    nobita,nobi

これは、コピーの場合の区切り文字がタブだからです。

実行後に結果を破棄する

これは字のままで結果が破棄されます。つまり結果が表示されません。

通常、クエリを実行すると次のような表示になります。

20090726205119

オプションを有効にすると次のような表示になります。

20090726205207

タブが一つしか無く、メッセージにも何も表示されません。

ちなみに、「結果セットにクエリを含める」オプションを有効にしていると次のような表示になります。

20090726205307

結果を別のタブに表示する

クエリ入力欄と別のタブに結果が表示されるようになります。

通常、クエリを実行すると次のような表示になります。

20090726205732

20090726205510

上段にクエリ入力欄、下段に実行結果が表示されます。

オプションを有効にすると次のような表示になります。

20090726205622

20090726205649

初期表示段階で、タブ数が異なっています。

さらに実行すると、下段に表示されていたのが、別のタブに表示されるようになります。

「クエリ実行後に「結果」タブに切替える」オプションも有効にすると、次の表示になります。

20090726205921

まとめ

と、言うわけで1回目のSQL Server Management Studioのオプションについての紹介でした。オプションによって、ちょっとした使い心地が変わりそうですね。デフォルトのまま使用するのも良いですが、自分にあった設定を模索してみるのも良いかもしれませんね。数分の暇つぶし、気分転換になると思います。

2回目は、またそのうち・・・・。

他のサーバのVMをHyper-VにインポートするとError 0x80070057が発生する

情報源:Rexiology@MSDN : Error 0x80070057 when importing Hyper-V VM around servers.

他のマシンでHyper-Vマネージャを使用しエクスポートしたデータを、インポートしようとするとエラーが発生する。

Failed to import the virtual machine from import directory 'C:\vpc\somevpc1\'. Error: One or more arguments are invalid(0x80070057)

1つ以上の無効な引数があります。

解決するには、次のように.expファイルを手動で修正する必要がある。

<INSTANCE
  CLASSNAME="Msvm_VirtualSystemGlobalSettingData">
...
  <PROPERTY NAME="ScopeOfResidence" TYPE="string">
    <VALUE>
e7668fbc-216e-4ed1-8ce3-3b932b42e22b
    </VALUE>
  </PROPERTY>
If I edit the .exp file and delete the <value>..</value> then the virtual machine imports with no errors.

<value>..</value> を削除するとエラーが発生することなくインポートすることができるようになる。

expファイルは、エクスポートしたフォルダーの下のVirtualMachineフォルダーにある。

expファイルのMsvm_VirtualSystemGlobalSettingDataインスタンス内のScopeOfResidenceをプロパティ名にもつ要素のGUID (<value>タグ)を削除すればよい。

TechEd Japan 2009 ライトニングトーク登壇者募集中

TechEd 2009で今年もライトニングトークの登壇者を募集しています。

ライトニングトークは5分間のプレゼン。

5分間で自分の伝えたいことをばしっとアピールする場です。

5分なのであっと言う間なのはずなのに時には、異常に長い5分にもなったりするライトニングトーク。

情報を発信する人の元に情報が集まると言われます。

ちょっとこれは誰でも知ってるよね・・・・と思ってもとりあえず発表しちゃいましょう。

すると案外感謝されたり、補足情報をいただいたり、感想をいただいたり、はたまた話しかけてもらえるきっかけとなったりと、たった5分と油断しちゃいけません!5分の後、世界が広がるのがライトニングトークです。

しかも、Tech・EDの他のセッションにも参加でき一石三鳥ぐらいにはなります。

 

詳細は、Tech・Ed Japan 2009 ライトニング トーク 登壇者募集! | マイクロソフトで確認を。

そして、こんなネタで良いんだろうか・・・・・と心配になった方、ネタが何も見つからないとお嘆きの方は、長沢智治のライフサイクルブログ : Tech・Ed Japan 2009 | 【求む!登壇者!!】今年もやります ライトニングトーク!でおっしゃられているようにMSのエヴァンジェリスト長澤さんに相談してみると良いかもしれません。

 

アピールしたいことがある人、Tech・ED興味あるけど予算出してもらえないし自腹はちょっときついっと諦めている人はぜひぜひライトニングトークで挑戦をしてみてはどうでしょうか。

自分もライトニングトークを実施する予定です♪

6/24-6/30 Hot-Fix KB週間リリース-Developer

情報源:The Hot Blog : Jun. 24 - Jun. 30 Hot-Fix KB articles Weekly Release – Developer

先週、4つの開発者向け製品のhot-fix KBがリリースされました。

  • Windows Embedded system
  • Visual Studio
    • 969153 Visual Studio 2005でMFCを使用して、アプリケーションの同じ行上に複数のツールバーを配置できません
  • .NET Framework
    • 967090 エンコーディングプロパティをUTF8にし、無効な文字を含むメッセージを送信するWEBサービスを実行すると「Unable to translate Unicode character ‘invalid character string’ at index ‘index_number’ to specified code page」とエラーがでる。
  • IIS 7.0
    • 970772 リモートIIS 7.0サーバに接続したとき、IISマネージャはリモートサーバ上の言語で表示されないユーザインターフェイスがある