我正在尝试使用Java为mysql创建表。代码如下。

  Statement stmt2 = con.createStatement();

  String sql = "CREATE TABLE " + libcard +
               "(Title INTEGER, " +
               " Director VARCHAR(255), " +
               " dateBorrowed DATE, " +
               " dueDate DATE)";

  stmt.executeUpdate(sql);


但是总会有错误。 ::异常消息如下:


  您的SQL语法有误。检查与您的MySQL服务器版本对应的手册以获取正确的语法,以在第1行'23232.0(Title INTEGER,Director VARCHAR(255),dateBorrowed DATE,dueDate DATE')附近使用

最佳答案

检查documentation关于如何提供有效的表名。在您的情况下,23232.0应该用反引号将其包围:

String sql = "CREATE TABLE `" + libcard + "`" +
           " (Title INTEGER, " +
           " Director VARCHAR(255), " +
           " dateBorrowed DATE, " +
           " dueDate DATE)";

10-08 11:33