4

SQL Server Compact Editionデータベースのテーブルの列のタイプを変更したいのですが、ステートメントのようです

ALTER TABLE [table name] modify [column name] [new type]

が機能していません(VS2010でエラーが発生しました:「ALTERTABLE SQLコンストラクトまたはステートメントはサポートされていません。」)。

元の型はINTで、BIGINTに変更したいと思います。

SQL Server CEで完全にサポートされていないのですか、それとも別の種類のクエリを実行する必要がありますか?

4

4 に答える 4

6

「機能していない」とは正確には何を意味するのかは述べていませんが、Books Onlineによると、構文ALTER TABLE [table name] ALTER COLUMN [column name] [new type]は SQL Server の他のインスタンスとまったく同じである必要があります。

ただし、列のデータが新しいデータ型でサポートされていない場合、問題が発生します。

于 2013-01-25T16:16:54.367 に答える
1

実際、 CompactViewプログラムを使用することにより、VisualStudioが私の問題の原因であるようです。

ALTER TABLE [table name] ALTER COLUMN [column name] [new type]

働いて私の問題を解決しました。:)あなたの助けをどうもありがとう!

于 2013-01-25T17:03:20.763 に答える
1

その中のデータが新しいCOLUMNタイプと競合する場合、COLUMNを変更できないことを忘れないでください。例:COLUMNタイプはVARCHAR2であり、シンボルがあり、NUMBERにALTERしたいとします。または、データ型がVARCHAR2(20)で、VARCHAR2(5)に変更したいのですが、5シンボルより長い文字列があります。

于 2013-01-25T16:28:14.547 に答える
1

別の方法は、新しいテーブルを作成してから、現在のテーブルの値を新しいテーブルに挿入してから、古いテーブルを削除することです。次に、新しい名前を変更します。

于 2013-01-25T16:15:19.930 に答える