Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用java时如何在MySQL中创建表_Java_Mysql - Fatal编程技术网

使用java时如何在MySQL中创建表

使用java时如何在MySQL中创建表,java,mysql,Java,Mysql,我正试图通过java在mysql中创建一个表。顺便说一句,我正在用腻子。这里是我到目前为止的一些代码,但它不起作用 rs=s.executeQuery("CREATE TABLE test(id CHAR(2),name VARCHAR(3),PRIMARY KEY(id)); "); while(rs.next()) { System.out.println(rs.getString(1)); } catch (SQLException ex) { System.out.println

我正试图通过java在mysql中创建一个表。顺便说一句,我正在用腻子。这里是我到目前为止的一些代码,但它不起作用

rs=s.executeQuery("CREATE TABLE test(id CHAR(2),name VARCHAR(3),PRIMARY KEY(id)); ");
while(rs.next())
{
  System.out.println(rs.getString(1));
}
catch (SQLException ex)
{
  System.out.println("SQLException:"+ ex.getMessage());
}
请看这里的帖子:


如果您希望实际修改数据库,则应该使用。

您的查询没有问题!但是你没有得到结果集!CREATE表不会给出行或列的名称。 您被文档欺骗了:

返回: 包含给定查询生成的数据的ResultSet对象;永不失效

然而

抛出: SQLException-如果发生数据库访问错误,。。。给定的SQL语句生成除单个ResultSet对象之外的任何对象

在我看来,“执行”是正确的方式

用于返回
结果集的请求(通常为
选择

对于
DML
(和
DDL
)查询,您需要使用方法


有关更多信息和示例,请使用教程。

我认为通过Java生成数据库模式从来都不是一个好主意。使用数据库附带的实用工具创建模式。这样,您或任何人(如DBA)都可以创建表、视图、索引、约束、授予权限等,而无需了解Java。您甚至可以让数据库实用工具生成SQL脚本,您可以运行该脚本从头开始重新生成架构。最后一点:我认为最好调用主键test_id并使其类型为numberic、long或int。这样,当您在另一个表中将其作为外键引用时,您将立即知道它引用回测试表。

您遇到了什么错误?我相信您使用的是正确的API。如果这不起作用,我们需要知道错误以进一步帮助您。它会捕获任何异常吗???SQLException:无法使用executeQuery()发出数据操作语句。s-1表示不清楚。