2009-05-06 188 views
8

私は、Microsoft SQL Server Management Studio Expressで見ると、「読み取り専用」に設定されたフィールドを持つテーブルを持つSQLデータベースを持っています。"読み取り専用セル"に設定されているSQLサーバーデータベースのフィールドを変更するにはどうすればよいですか?

このフィールド内のデータを手動で変更する必要がありますが、これを無効にするために変更できるプロパティは表示されません。

これを行うには、テーブルにSQLスクリプトを記述する必要がありますか、または私が紛失しているものがありますか?

+0

フィールドを変更する必要があるのはなぜですか? –

+0

@ lassevk - 私はもともとデータベースをセットアップしていないので、確かではありません。基本的には変更されない設定テーブルです。 – cyberbobcat

答えて

7

フィールドのデータ型は? ntextまたはimageデータ型および管理スタジオのサイズが処理できない場合は、そのデータ型に「入力」できない場合があります。

この場合、次のように更新を実行することはできません。

UPDATE TableName SET ColumnName = 'NewValue' WHERE PrimaryKeyId = PrimaryKeyValue 
+1

データ型は "xml"です。 – cyberbobcat

+2

これは問題になります。 Xmlは、セル内での編集が困難な複雑なデータ型です。私はあなたがUPDATEステートメントでこれを行う必要があると思います。 –

+0

よろしくお願いします。 – cyberbobcat

2

フィールドには計算値が含まれている可能性が最も高いため、「読み取り専用」となります。

この場合、テーブル定義で計算を変更して値を変更する必要があります。

+0

SQLサーバー管理スタジオエクスプレス内でこれのCalculationプロパティが表示されませんか? – cyberbobcat

+0

フィールドタイプがXMLであるという別のコメントを読みました。おそらく、SQL Server Management StudioでXMLを直接編集することはできません。 – Tomalak

+0

はい、そうだと思います。とにかくありがとう。 – cyberbobcat

1

この問題は、特定のフィールドをプライマリキーとして設定し、 'アイデンティティ情報'がtrueに設定されている場合に発生します。これは、挿入が行われるたびにフィールドが自動的にインクリメントされることを意味します。自動インクリメントであるかどうかを調べます。そうであれば、そのプロパティーは 'Idenitity Is'をfalseに変更します。

関連する問題