0

SQL Server 2005 と JSP を使用しています。文字列オブジェクト値として名前を持つ列を追加したい。

String dr="Doctor1";

stat1=conn.createStatement();
stat1.executeUpdate("ALTER TABLE dbo.PHPL ADD '"+dr+"' NVARCHAR(255) Null");

列名の近くでエラーが発生しています。構文を間違えていると思います。助けてください。

4

2 に答える 2

3
String dr="Doctor1";

stat1=conn.createStatement();
stat1.executeUpdate("ALTER TABLE dbo.PHPL ADD "+dr+" NVARCHAR(255) Null");

それはうまくいきます。

于 2012-09-14T05:29:25.730 に答える
0

ここにいくつかの問題があります

  • ではなく、executeを使用する必要がありますexecuteUpdate。テーブルの変更はDDLコマンドであり、挿入、更新、削除ではありません
  • KittenLSが指摘しているように、の構文にALTER TABLEは引用符は必要ありません。ただし、スペースやキーワードなどをエスケープするには、「[]」を使用する必要があります。

すなわち

stat1.execute("ALTER TABLE dbo.PHPL ADD [" + dr + "] NVARCHAR(255) Null");
于 2012-09-14T05:36:12.967 に答える