为了账号安全,请及时绑定邮箱和手机立即绑定

表不是在 java-mySQL 中创建的

表不是在 java-mySQL 中创建的

LEATH 2023-03-09 14:07:10
我使用 mySQL workbench 创建了一个名为 testdb 的数据库。然后我通过数据库>连接到数据库连接到它。然后我用java(eclipse)写了一些代码来获取数据库连接在数据库中创建一个表。代码的输出显示连接和创建表已完成。但是当我返回 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 行的 '' 附近使用的正确语法功能齐全。
查看完整描述

1 回答

?
至尊宝的传说

TA贡献1789条经验 获得超10个赞

你的sql语句中少了一个括号),正确的是

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



查看完整回答
反对 回复 2023-03-09
  • 1 回答
  • 0 关注
  • 82 浏览

添加回答

代码语言

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信