gpt4 book ai didi

java - java-mySQL 中未创建表

转载 作者:行者123 更新时间:2023-11-29 15:48:47 25 4
gpt4 key购买 nike

我使用 mySQL Workbench 创建了一个名为 testdb 的数据库。然后我通过“数据库”>“连接到数据库”连接到它。然后我在java(eclipse)中编写一些代码到

  1. 获取数据库连接
  2. 在数据库中创建一个表。

代码的输出显示连接和创建表已完成。

但是当我返回 mySQL 时,我在数据库中看不到任何表。谁能帮我解释为什么没有创建表?

package database;

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

public class main {

public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
getConnection();
createTable();
}

public static void createTable() throws Exception {
try {
Connection con = getConnection();
PreparedStatement create = con.prepareStatement("CREATE TABLE IF NOT EXISTS tablename(id int NOT NULL AUTO_INCREMENT, first varchar(255), last varchar(255), PRIMARY KEY(id)");
create.executeUpdate();
}catch(Exception e) {System.out.println(e);}
finally {
System.out.println("Function complete.");
};

}

public static Connection getConnection() throws Exception{

try {
String driver = "com.mysql.jdbc.Driver";
String url = "jdbc:mysql://localhost:3306/testdb";
String username = "root";
String password = "00000";
Class.forName(driver);
Connection conn = DriverManager.getConnection(url, username, password);
System.out.println("Connected");
return conn;
} catch(Exception e) {System.out.println(e);}

return null;
}


}

这是输出:

已连接

已连接

java.sql.SQLSyntaxErrorException:您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,了解在第 1 行 '' 附近使用的正确语法

功能完成。

最佳答案

你的sql语句中缺少括号),正确的是

 "CREATE TABLE IF NOT EXISTS tablename(id int NOT NULL AUTO_INCREMENT, first varchar(255), last varchar(255), PRIMARY KEY(id))"

关于java - java-mySQL 中未创建表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56889103/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com