将java程序连接到mysql数据库

String dburl = "jdbc:mysql://localhost:3306/librarymanagementsystem";

String user = "nandika";

String password = "nandika";


public void createConnection(int id, String name, String author, String 

    publisher) {

    try {

        Connection mycon = DriverManager.getConnection(dburl);

        Statement mystmt = mycon.createStatement();

        String sql = "insert into addbook" + "(Book ID,Book 

        Name,Author,Publisher)" + "values" + "(" + id + "," + name + "," + 

        author + "," + publisher + ")";


        mystmt.executeUpdate(sql);

        System.out.println("updated");

    } catch (Exception ex) {


    }

execute update 是另一个类中的一个方法。这个代码段似乎有什么问题?数据库不更新!!


素胚勾勒不出你
浏览 162回答 3
3回答

浮云间

您尚未加载数据库驱动程序,要执行此操作,请包含以下代码:Class.forName("com.mysql.jdbc.Driver");如果您还没有驱动程序下载并放入项目库。

倚天杖

他们是这个代码片段的一些问题。一是你没有加载数据库。你也没有使用 username 和 password。我建议您单独创建数据库连接。也许在一个单独的 Java 文件中。如下,public class DatabaseConnection {    public static Statement getConnection() throws Exception{        Class.forName("com.mysql.jdbc.Driver"); //Loading the database        Connection c = DriverManager.getConnection("jdbc:mysql://localhost:3307/restaurentsystem","nandika","nandika"); //username and password can save as variables and pass here        Statement statement = c.createStatement();        return statement;    }}然后你可以随时使用它。在这种情况下,try {    Statement s = DatabaseConnection.getConnection();    s.executeUpdate("INSERT INTO addbook (Book ID, Book Name, Author, Publisher) VALUES (?, ?, ?, ?);"); //Values should assign here.    System.out.println("updated");} catch (Exception e) {    System.out.println(e);}如果我这样做,这就是我所做的。我建议你试试这个方法。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java