1

SQL データベースに何かを挿入しようとしていますが、コードが機能しません。私はこれに慣れていませんが、いくつかの異なることを試した後、私はまだ立ち往生しています。コードを機能させる方法についてのアイデアはありますか? 実際にはエラーは発生していませんが、情報がデータベースに入力されることはありません。前もって感謝します。

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

public class sqlIns
{
    public static void main (String []args)
    {
        String host = "jdbc:mysql://localhost:3306/tempdatat";
        String user = "root";
        String pass = "Nathan1";

        try
        {
            Class.forName("com.mysql.jdbc.Driver");
            Connection con = DriverManager.getConnection(host,user, pass);
            PreparedStatement statement = con.prepareStatement("Insert Into tempdata(id, timedata, tempdata) VALUES (?, ?, ?)");
            statement.setInt(1, 1);
            statement.setInt(2, 30);
            statement.setDouble(3, 78.30);
            statement.execute();
            statement.close();
            con.close();
        }
        catch(Exception e)
        {
             System.out.println(e.getMessage());
        }
        finally
        {
                 System.out.println("Done!");
        }

     }
}
4

2 に答える 2

1

ホスト変数とSQLクエリでDBテーブル名が異なります。両方の場所でデータベースの正しいテーブル名を確認してください。また、SQL クエリにはすべて小文字を使用します。

それを試してみてください:

insert into tempdata(id, timedata, tempdata) values (?, ?, ?)

それ以外の :

Insert Into tempdata(id, timedata, tempdata) VALUES (?, ?, ?)
于 2014-09-15T15:56:50.260 に答える
-1

あなたのコードは実際には非常に優れており、ほぼ正しいコードになっています。

あなたの唯一の間違いは、 INSERT には次を使用する必要があることです。

statement.executeUpdate();
于 2013-07-13T17:29:54.997 に答える