Tag: jdbc

java – MySql中的Multipile更新语句

所以我有一个软件,基本上从我的MySQL数据库下载1.5K游戏服务器地址。 然后它ping所有这些,然后将在线播放器等信息上传回数据库。 过程如下: 下载服务器地址 Ping服务器并获取信息 将信息上传回数据库 到目前为止,我已经能够解决下载服务器主机名的部分并对其进行ping操作,但更新服务器时出现问题。 要更新我想过使用for循环来构造一个包含许多更新语句的BIG字符串并立即执行它,但这很容易进行sql注入。 因此,想要使用准备好的语句。 我正在使用的SQL更新语句是: UPDATE serverlist SET `onlineplayers` = ‘3’, maxplayers = ’10’, name = ‘A game server’ WHERE `ip` = ‘xxx.xxx.xxx.xxx’ AND `port` = 1234; 所以我的问题是: 如何使用参数化查询执行所有1.5K更新语句?

在Windows中的Netbeans / Glassfish上添加jdbc驱动程序的位置?

我有一个在Netbeans 6.8中创建的企业应用程序,它与Glassfish V3服务器一起打包。 当我尝试部署和运行EAR项目时,我一直在从服务器日志中收到以下exception: SEVERE: jdbc.exc_cnfe_ds java.lang.ClassNotFoundException: com.mysql.jdbc.Driver 从谷歌搜索,通常的解决方案是将包含该类的jar文件(mysql-connector-java-5.1.6-bin.jar)复制到 $glassfish-v3-install-root/glassfish/domains/domain1/lib. 事实上,它就是它驻留在Unix服务器上的地方。 但是,我在Windows上测试它,并且默认的glassfish安装中不存在“domains / domain1”目录。 我手动添加它们并添加了jar,但它没有任何区别。 我还将jar作为变量添加到windows类路径中,但这也没有效果。 然后我尝试添加jar文件$ glassfish-v3-install-root / glassfish / lib,这产生了一个不同的错误: 严重:RAR5111:错误转换为javax.sql.Datasource java.lang.ClassCastException:com.mysql.jdbc.Driver无法强制转换为javax.sql.DataSource 我正在使用与服务器相同的jar文件。 我猜这个jar子放错了地方? 我不想把它放在项目中,因为这不是它在生产中的部署方式。 任何帮助赞赏。

使用JDBC将PL / SQL过程与用户定义的记录一起调用为IN参数

我试图调用以下PL / SQL过程,该过程将用户定义的记录类型作为IN参数。 — User Defined Record TYPE EMP_REC IS RECORD ( id employees.employee_id%type, name employees.last_name%type, dept_name departments.department_name%type, job_title jobs.job_title%type, salary employees.salary%type, manager_id employees.employee_id%type, city locations.city%type, phone employees.phone_number%type ); 以下是用户定义记录的定义: — PURPOSE: Prints all employee information from the employee record — Example Of: PROCEDURE that takes in a parameter of RECORD type PROCEDURE print_employee_all_details(empl1 emp_rec […]

自动将ElasticSearch与SQL同步

我运行了这个查询,效果很好。 curl -XPUT ‘localhost:9200/_river/my_jdbc_river/_meta’ -d ‘{ “type” : “jdbc”, “jdbc” : { “url” : “jdbc:mysql://localhost:3306/test”, “user” : “myaccount”, “password” : “myaccount”, “sql” : “select * from orders” } }’ 一切似乎都被编入索引。 但是,当我从Orders表中更改数据时,更改并未反映ElasticSearch中的文档。 是否可以自动同步更新/更改的数据?

JDBC瘦驱动程序:无效的数据包长度

当我对我的一些Java代码运行自动批量测试时,我遇到了一个奇怪的“无效数据包长度”(这就是拼写错误的方式)错误,我希望有人之前遇到过此错误或者可能指向我正确的方向。 通过JUnitunit testing或从GUI测试我的代码时,我没有遇到此错误。 我在自动批量测试中只遇到此错误。 关于我的批量测试的一点点:对于某些输入,我的代码将运行很长时间(这是预期的),但是为了将结果加速到更合理的时间范围,我正在创建一个新的线程来运行每个个别测试,以便我可以在一些给定的最大经过时间后停止测试。 请注意,测试和实际代码都需要连接到同一个数据库实例才能加载数据。 实际代码使用单个连接从数据库中读取(它不是multithreading的)。 我仍然试图找出测试连接数据库的最佳方法(因此这个问题)。 我的第一个想法是,我正在做一些不友好的事情,因为我关闭我的测试线程以尽早退出运行。 我打电话给被弃用了 threadObject.stop(); 方法,因为我的实际代码不是multithreading的,没有“友好”的方式来杀死内置的线程。在几个(~2-3)停止线程后,我的JDBC连接抛出一个“Invalid Packet Lenght”错误,然后其他测试的“套接字关闭”exception。 我尝试了所有这些相同的结果: 重用实际代码使用的相同连接 创建一个新连接,并为所有测试重用相同的第二个连接 每次我停止()长时间运行的测试时关闭并重新创建测试连接 为每个测试创建一个新连接(这可以工作,直到我最大化我的连接数) 我已经确定了两个连接,“test”和“actual”,“test”连接是抛出exception的连接。 组态: Eclipse 3.4 Java Compliance 1.6 ojdbc14_g.jar JDBC驱动程序 Oracle 9 DB 我究竟做错了什么? 我应该采用不同的方式处理“测试”连接吗? 我是否需要重新构建我的“实际”连接才能运行批量测试? 导致“无效数据包长度”错误的原因是什么?

DriverManager没有合适的驱动程序mysql

我们在查找为什么在使用DriverManager创建连接时收到错误消息时遇到了一些麻烦。 这是我们的代码 package Databank; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.Statement; import java.util.List; public class Connectie_Databank { //Eigenschappen databank private String connectieString = “”; private Connection connectie = null; private PreparedStatement prepStatement = null; private Statement statement = null; private ResultSet inhoudQuery = null; //Inloggegevens PhpMyAdmin private String gebruikersnaam, wachtwoord; //Constructor met […]

在Java中与SQL Access数据库建立SQL连接时找不到合适的驱动程序

我在一个简单的Java应用程序中有一个Jbutton(GetDataFromDB),它假设将数据从下面代码中的路径中描述的数据库加载到应用程序中的Jtable中。 编辑答案代码: private void GetDataFromDBActionPerformed(java.awt.event.ActionEvent evt) { Connection con; ResultSet rs = null; Statement stmt; try { Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”); con = DriverManager.getConnection(“jdbc:odbc:Driver={MS Access Driver (*.mdb, *.accdb)};Dbq=C:\\Users\\Bruger\\Documents\\Database11.accdb”); stmt = con.createStatement(); String query = null; query = “select * from cost”; rs = stmt.executeQuery(query); i = 0; while (rs.next()){ i = i + 1; jTable.getModel().setValueAt(rs.getString(1), i, 1); jTable.getModel().setValueAt(rs.getString(2), […]

如何将数据库中的所有数据显示为jtable?

我们在数据库中有一个名为data的表,我们希望使用NetBeans IDE检索和显示JTable组件中的所有数据。 数据库中的每一行都应显示在jtable中。

interbase.interclient.UnlicensedComponentException,包含最新的interclient.jar IB(v7.5.80)

我们正在尝试使用Java 8 spring应用程序打开一个连接到存储在某个file.gdb上的远程服务器上的遗留interbase数据库。 interclient.jar(interbase jdbc驱动程序)是通过从embarcadero interbase开发人员版本中提取的SDK \ lib文件夹获得的。 我们的application.properties: spring.jpa.database-platform=org.hibernate.dialect.InterbaseDialect spring.datasource.username=sysdba spring.datasource.password=masterkey spring.datasource.driver-class-name=interbase.interclient.Driver spring.datasource.url=jdbc:interbase://192.168.1.100:3050/d:/test.gdb 我们从远程主机获取此exception(在本地尝试使用’localhost’): 2015-01-20 18:45:32.628 ERROR 8880 — [ main] ohhspi.PersistentTableBulkIdStrategy : Unable obtain JDBC Connection interbase.interclient.UnlicensedComponentException: [interclient] Unlicensed component: This version of InterClient refuses communication with InterBase version WI-V7.5.1.80/tcp (Merav28-Srv)/P14. See API reference for exception interbase.interclient.UnlicensedComponentException at interbase.interclient.Connection.remote_ATTACH_DATABASE(Unknown Source) at interbase.interclient.Connection.connect(Unknown Source) […]

什么是导入com.mysql.jdbc.Driver;

作为我项目的一部分,我正在尝试将其与数据库连接。 我在谷歌搜索代码,我得到以下代码。 在那里我不明白两件事 – “import com.mysql.jdbc.Driver;” 和“新司机”。 这两个意味着什么? package javasql; import com.mysql.jdbc.Driver; import java.sql.*; public class Connect { public Connect() throws SQLException{ makeConnection(); } private Connection koneksi; public Connection makeConnection() throws SQLException { if (koneksi == null) { new Driver(); // buat koneksi koneksi = DriverManager.getConnection( “jdbc:mysql://localhost:3306/mysql”,”root”,”virus”); } return koneksi; } public static void main(String […]