0

私はこれらのコード行に行き詰まり、イライラしています:

 String updateSQL="UPDATE " + tableName + " set " + secondColumn + "='"+ value2 + "',"+ thirdColumn + "='"+ value3 +"'" + "," + fourthColumn +"='"+ value4 +"'" + "where " + firstColumn + " = "+ checkvalue ;

このクエリが完全に機能するようになりました! 私は完全には実行されないが、同じスタイルの別のクエリを持っています:

  String updateSQL="UPDATE " + tableName + " set "  + secondColumn + "='"+ value2 +"'" + ","+ thirdColumn + "='"+ value3 +"'" + "," + fourthColumn +"='"+ value4 +"'" + "," + fifthColumn +"='"+ value5 +"'" + "where " + firstColumn + " = "+ checkvalue ;

更新しようとしているときにこのコード行を実行すると、「Where 句の 'PNO3' の不明な列」というエラー メッセージが表示されます。

私は最初の列に PNO3 があることを知っていますが、最初のクエリで同じことをすると、それが見つかりますか? 助けはありますか?

この switch ステートメントを使用して、列が正しい列を指していることを確認します。

  switch (tableName) {            
             case "s":  
                 firstColumn = "ID";
              secondColumn = "Namn";
              thirdColumn = "Efternamn";
              fourthColumn = "Adress";
                 break;
             case "p":
                  firstColumn = "PNO";
              secondColumn = "PNAME";
              thirdColumn = "COLOR";
              fourthColumn = "WEIGHT";
              fifthColumn = "CITY";
                 break;
             case "j":
                   firstColumn = "JNO";
              secondColumn = "JNAME";
              thirdColumn = "CITY";           
                 break;
             case "spj":
                  firstColumn = "SNO";
              secondColumn = "PNO";
              thirdColumn = "JNO";
              fourthColumn = "QTY";
                 break;

         }
4

2 に答える 2

0

正確な問題を伝えることはできませんが、* firstColumn は Varchar() であると思います。そうであれば、ステータス値に一重引用符を追加してください。または * テーブルに間違った列名を渡しています。

あなたがエラーを投稿した場合、それは非常に役に立ちます。

SUGGESTION : パラメータ化された構文は、あなたのものよりも読みやすいため、必ず使用してください。

于 2013-11-06T20:02:13.350 に答える