2016-11-11 1 views
0

ある表から別の表にすべての値をコピーしようとしています。私はSQliteを使用しています。名前、勘定、電子メール、12/30/2016,01/13/2017という名前の列名を持つ複数の列があります。すべての列は、最初の3列以外の日付として名前が付けられます。列名が日付の場合は列の値をコピーします

PreparedStatement prepCopy = con 
         .prepareStatement("INSERT INTO table1(12/30/2016) SELECT 12/30/2016 FROM table2"); 
    prepCopy.execute(); 

しかし、私はこのエラーを取得しています:私はこの文を使用してコピーしようとしています

near "12": syntax error: 

私は名前、アカウント、および電子メールなどの他の列のためにこれをやってみました、それが動作します。このエラーは日付列名にのみ発生します。私はまた、日付の前後に ''を入れてみましたが、その後、すべての行に日付そのものを設定します。私は小さなディテールが欠けていると思いますが、私はそれを理解できないようです。

ご迷惑をおかけして申し訳ございません。 :)

+0

あなたが最初 – Jerry06

+0

はい、私はそれをやっているSQLクエリのSQL文をテストする必要があります。しかし、それは私にエラーを与えている。私も'12/30/2016 'をやってみましたが、新しいテーブルの12/30/2016という名前の列のすべての行に12/30/2016の値を挿入します。列名、アカウント、電子メールで試してみると、うまくいきます。 –

答えて

0

日付を囲む - 列名である場合は、二重引用符またはバッククォートで囲みます。

INSERT INTO table1("12/30/2016") SELECT "12/30/2016" FROM table2 

も参照してください:http://www.sqlite.org/lang_keywords.html

関連する問題