2017-08-29 10 views
0

javaを使用してmySQLデータベースに接続しようとしています。私は接続することができるようだが、stmt.executeUpdateを使用してデータベースにアップロードすることができない。私がアップロードしようとしていたトークンは文字列ですが、私は私のコンソールでこれを取得する:mySQLへの文字列のアップロード|構文エラー

1b7a19bb5d924bc5b13d53c7b2a47394 接続 com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:あなたはあなたのSQL構文でエラーが発生しています。ライン1

に近い「1b7a19bb5d924bc5b13d53c7b2a47394」を使用する権利構文についてはMySQLサーバのバージョンに対応するマニュアルを確認してください。これは、私は現在、私のメインクラスを持っているコードです:

String token = tokengenerator.generateQR(url, location); 
    tokens.add(token); 
    System.out.println(token); 

    try { 


    conn = DriverManager.getConnection(CONN_STRING,USERNAME,PASSWORD); 
    System.out.println("Connected"); 
    Statement stmt = (Statement) conn.createStatement(); 
    stmt.executeUpdate(token); 
    System.out.println("Uploaded"); 
    }catch (SQLException e){ 
    System.err.println(e); 
    } 

と、この私はそれが動作しませんし、データベースに文字列をアップロードしたいと思いますなぜ私はわからないよ私のトークン

public static String generateQR(String url, String location) throws Exception { 
    String uuid = UUID.randomUUID().toString(); 
    uuid = uuid.replaceAll("-", "");   
    String scan= url + uuid;  
    ByteArrayOutputStream out = QRCode.from(scan).to(ImageType.PNG).stream(); 
    File f = new File (location); 
    FileOutputStream fos = new FileOutputStream(f); 
    fos.write(out.toByteArray()); 
    fos.flush();   
return uuid;   
} 

を作成する方法です。 ありがとうございます。

+0

実行中のクエリは何ですか? – tadman

+0

'stmt.executeUpdate'にSQL文を渡す必要があります。あなたが送るトークンは長いコードのように見えますが、有効なSQLではありません。どのような種類のSQLアップデートが起こりますか? –

答えて

0

generateQR関数は、を返します。これはSQL文ではありません。この戻り値は、後で実行しようとするtoken変数に移動します。

+0

SQLデータベースに文字列を送信するには、どのようなステートメントが必要ですか? –

+0

SQLステートメントは、次のとおりです。あなたのトークンを挿入したい場合、それは次のようなものです:yourtable(columname)values( 'token')に挿入 – quantummind

+0

私はあなたが最初にmysqlの文を試してから、あなたのjavaプログラムに文を入れてください文がうまく見えるかどうかあなたのprintlnで確認してください。 – quantummind