我有一个与MySQL数据库的Java程序连接,如何在同一连接上将当前数据库更改为另一个数据库?
我这样连接到MySQL:
DriverManager.getConnection("jdbc:mysql://"+server+"/",log,pass);
经过一些操作后,我想在同一连接上连接到另一个mysql数据库。我怎样才能做到这一点?
我尝试使用:
Statement stat= con.createStatement();
ResultSet r=stat.executeQuery("use mysql");
但这不会更改要使用的数据库。
如MySQL文档中所述,您需要Connection.setCatalog()
用于切换到另一个数据库。这也明确地说,你应该 不
执行USE <databasename>
切换。
发出此警告的原因是JDBC是数据库的通用接口,因此JDBC提供了用于大多数常见任务的方法,包括切换catalogs
(或databases
在MySQL中如此)。JDBC规范/
javadoc还明确指出,人们应该通过数据库特定的命令来使用API(如果两者均可用)。造成这种情况的原因有很多:1)它促进了与数据库无关的代码,2)驱动程序可能会在内部对API方法之一做出额外的响应。使用特定于数据库的命令可能会导致驱动程序出现异常,因为其内部状态与数据库状态不匹配。
调用setCatalog(String)
不会影响现有语句,如JDBC API文档中所指定:
调用
setCatalog
对先前创建或准备的Statement
对象无效。它是限定的数据库管理系统是否准备操作立即发生在当执行Connection
方法prepareStatement
或prepareCall
调用。为了获得最大的可移植性,setCatalog
应在Statement
创建或准备a之前调用它。
问题内容: 我在Windows 7上,对这个数据库东西有些陌生。我尝试在Google上搜索如何将时区从我的系统更改为UTC,但是文档有些高级,因此我不太确定如何更改此字段。 问题答案: 在my.ini文件的[mysqld]部分下,添加以下行: 重新启动服务器。您还可以在运行时从命令行使用以下命令进行设置 MySql的文档
本文向大家介绍如何在Ubuntu 16.04上将MySQL数据目录更改为另一个位置,包括了如何在Ubuntu 16.04上将MySQL数据目录更改为另一个位置的使用技巧和注意事项,需要的朋友参考一下 在本文中,我们将学习如何更改MySQL数据目录或将MySQL数据库数据重新放置到新位置,当数据库增长非常快时,或者出于某些安全原因,我们想移动数据目录时,可能会使用这种情况。到新位置。 先决条件 具有
问题内容: 我有一个数据库(),其中有数十个数据库,每个数据库都有许多(平均10-20),数据类型设置为。这绝对是致命的性能(其中一些列用于其中,某些表具有100K+行)。我想将所有这些列更改为。自动执行此操作的最佳方法是什么?(我可以使用,也可以创建一个实用程序来通过可访问db的网站执行此操作,以较容易的为准)。 问题答案: 这是一个工作脚本,用于查找所有列并将其转换为: 这是我曾经宽恕过的唯一
//MySQL,,mysql -v select version(); //Oracle select * from v$version;
问题内容: 如何创建数据库触发器以将行更改记录到H2中的另一个表? 在MySQL中,这可以轻松完成: 问题答案: 声明此触发器: 使用Java / JDBC实现触发器: 用jOOQ实现触发器: 由于您在问题中添加了jOOQ标记,因此我怀疑这种替代方法也可能是相关的。您当然可以在H2触发器内使用jOOQ:
我正在尝试更改JTable中具有特定值的单元格,以更改为另一个值。但是,原始值是Double数据类型,我想更改为String数据类型。我写了下面的代码来更改文本,但我不知道为什么所有的值都不能匹配if语句条件。 这就是我的数据存储在文本文件中的方式:Name,N/a,-1.0 我想把-1.0改为N/A。这是我的代码: