新しいインデックスを追加/作成した後、INFORMATION_SCHEMA.KEY_COLUMN_USAGE が確実に更新されるようにするにはどうすればよいですか。すなわち:
CREATE UNIQUE INDEX [UK_Common.UserConnection]
ON [Common.UserConnection] ([SessionId] ASC,[UserId] ASC);
GO
データベースが必要です.1つは古いバージョン(V1)から新しいバージョン(V10)に変換/更新され、もう1つは新しい(V10)データベースです。データベースを比較すると、次を除いてすべてが一致します (これには PK、FK、インデックスなどが含まれます)。
INFORMATION_SCHEMA.KEY_COLUMN_USAGE
新しく作成した一意のインデックス ([UK_Common.UserConnection] SessionId および UserId) が変換されたデータベースにないことがわかります。変換されたデータベースは、新しい (V10) データベースと比較して、「key_column_usage」テーブルの行数が少なくなります。
SQL ce クライアント アプリケーションから "Create sql table script" を抽出すると、変換/更新されたスクリプトと新しい (V10) スクリプトのスクリプトは同一です。
トランスフォーマーにステートメントへの挿入を含めようとしました:
INSERT INTO [INFORMATION_SCHEMA.KEY_COLUMN_USAGE]
(COL0,COL1,COL2,COL3)
VALUES ('value0','value1','value2',value3)
GO
結果: システム テーブルまたはスキーマ情報ビューにデータを追加できません。[読み取り専用テーブルの名前 = @@INFORMATION_SCHEMA.KEY_COLUMN_USAGE]
また、select クエリ (rot to count key エラー) が配置されているこの inn .net をコーディングしようとしました。
("SELECT * FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE")
結果: システム テーブルまたはスキーマ情報ビューにデータを追加できません。[読み取り専用テーブルの名前 = @@INFORMATION_SCHEMA.KEY_COLUMN_USAGE]
質問は、asp.net プロジェクトで失敗した単体テスト (mstest) に関連しています: Assert.IsTrue が失敗しました。キー列の使用回数が異なります。
INDEX の編集/変更後に、INFORMATION_SCHEMA.KEY_COLUMN_USAGE をどのように更新しますか?
.NET 4.0 SQL CE 4.0 VS2010