小さい頃はエラ呼吸

いつのまにやら肺で呼吸をしています。


SQLServer

SQLServerのバージョンとエディションを調べるクエリ

SQLServerのバージョンとエディションを調べるクエリ SQLServerのバージョンやエディションを調べには、SQL Server Management Studioで次のクエリを実行することで、調べることができます。 SELECT SERVERPROPERTY('productversion'), SERVERPROPERTY ('pro…

SQL Server 2008 Express Editionをインストールするまでの手順

はじめに SQL Server 2008とSQL Server 2008 Management Studio(ともにExpress Edition)をインストールしようとしたら、必要なソフトウェアが揃っていなくてエラーが連発しました。ちょっとわかりにくかったので、インストール手順をまとめました。 SQL Serv…

SQLServerで現在のトランザクション分離レベルを調べる方法

SQLServer Management Studioで以下のクエリを実行すると、現在の接続でアクティブになっている (設定されている) SETオプションの値を確認することができます。 DBCC USEROPTIONS (Transact-SQL) DBCC USEROPTIONS このクエリで取得できる項目の1つにisolat…

SQLServerではNOLOCKを使用していても「ロック要求がタイムアウトしました。」のエラーになることがある

SQLServerのNOLOCKロックヒント SQLServerのNOLOCKロックヒントは、テーブルやレコードに対してロックをかけません。このため、別プロセスによってロックがかかっていたとしてもダーティリードして、データを読み取ることができます。 SQL Server の場合、既…

CommandTimeoutとSQLServerのSET LOCK_TIMEOUTについて

ADODB.ConnectionオブジェクトのCommandTimeoutプロパティに指定するタイムアウト時間とSQLServerのSET LOCK_TIMEOUTで指定するタイムアウト時間を混同していたので、調べてみました。 CommandTimeoutプロパティ CommandTimeoutには、ASPなどのスクリプトか…

MSXML 6 Service Pack 2 (KB954459) -- 構成に失敗しました。

はじめに SQL Server 2005をインストールしようとすると、MSXML 6 Service Pack 2 (KB954459) -- 構成に失敗しました。というエラーが表示され、インストールができないという現象が発生することがあります。以下はその原因と対処方法です。僕が会社で使って…

SQL ServerにUnicodeの文字列を格納する方法

はじめに SQL ServerにShift_JISでは表現できない文字(Unicode文字)を格納すると???で文字化けすることがあります。これは、Unicode文字がデータベース既定のコードページに自動的に変換された結果起こります。 --鴎の字はしなかもめ INSERT INTO TABLE ("…

Unable to connect to debugger on マシン名 (Error = 0x80040154 クラスが登録されていません ).

最近、クラシックASPをVisual Studio 2005でデバッグしていると、たまにIEがフリーズして応答が返ってこなくなる現象が発生します。イベントビューワでエラーが発生していないかを確認すると、以下のようなエラーが出力されていました。 Unable to connect t…

SQLServerにおけるサロゲート ペアのサポートについて

SQLServer(2000および2005)がサロゲートペアの文字をサポートしているかどうかを調べてみました。 サロゲートペアについて 近年、Unicodeに組み込みたいという文字の要望がいろいろと増えてきました。結果的に従来の2バイト(65536文字)では文字が足りな…

SQLServerへのデータ格納時の文字コード(コードページ)について

SQLServerにデータを格納する際の文字コード(コードページ)は、サーバやデータベースおよびテーブル列に設定されている照合順序(Collation)に依存しているようです。 char 型、varchar 型、text 型など、非 Unicode 型の文字データに照合順序を指定する…

SQLServerで大文字小文字を区別して検索する方法

SQLServerで大文字小文字を区別して検索する場合は、WHERE句にCOLLATE(照合順序)を指定します。 ※SQLServer2000と2005で検証済みです。 SELECT * FROM TABLE_NAME FROM WHERE X = 'Y' COLLATE Japanese_CS_ASデフォルトでは、Japanese_CI_ASが設定されてい…

SQLServerにJIS2004の文字を格納すると??で文字化けする

はじめに SQLServer2005にJIS2004で追加された新しい漢字を格納しようとすると、??で文字化けして格納されてしまうことがあります。このエントリはその原因と対処法について書きます。 JIS2004で追加された漢字が??で文字化けする SQLServerにJIS2004で追加…