gpt4 book ai didi

java - 无法使用 MySql 中的预准备语句创建数据库

转载 作者:行者123 更新时间:2023-12-03 03:00:47 24 4
gpt4 key购买 nike

我正在尝试使用 MySQL 中的预准备语句创建数据库。这里我传递的参数如图所示。

PreparedStatement createDbStatement = connection.prepareStatement("CREATE DATABASE ?");
createDbStatement.setString(1, "first_database");
createDbStatement.execute();
connection.commit();

但是我收到语法错误。是否可以使用准备好的语句创建表和数据库?

最佳答案

PreparedStatement 中只能用于绑定(bind)值(例如,in where 条件和 in values 子句),而不能用于绑定(bind)对象名称。因此,您不能使用它来绑定(bind)数据库名称。

您可以使用字符串操作来添加数据库名称,但在这种情况下,使用 PreparedStatement 确实没有任何好处,您应该只使用 Statement :

String dbName = "first_database";
Statement createDbStatement = connection.createStatement();
createDbStatement.execute("CREATE DATABASE " + dbName);

关于java - 无法使用 MySql 中的预准备语句创建数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26582722/

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