Tag: jdbc

JDBC使用正确的语句返回MySQLSyntaxErrorexception

我正在用java编写一个与MySQL数据库通信的应用程序,当我测试它时,我注意到在表中插入新行的代码引发了MySQLSyntaxError Exception,所以我尝试使用MySQL Workbench执行相同的INSERT,它工作。 有问题的代码是这样的: public static boolean aggiungiElem(String nome, GrafoGenerico g){ if(connessioneAperta()){ try{ String sqlCommandUser=”SELECT USER()”; String sqlCommandInserim=”INSERT INTO salvataggi VALUES ( ? , ? , DEFAULT , NULL );”; PreparedStatement sUser=conn.prepareStatement(sqlCommandUser); ResultSet risultatiUtente=sUser.executeQuery(); String utente = null; while(risultatiUtente.next()){ utente=risultatiUtente.getString(1); } sUser.close(); PreparedStatement sInserim=conn.prepareStatement(sqlCommandInserim); sInserim.setString(1, utente); sInserim.setString(2, nome); //sInserim.setObject(3,g); System.out.println(sInserim.toString()); sInserim.executeUpdate(sqlCommandInserim); sInserim.close(); return true; } […]

oracle.jdbc.driver.OracleDriver ClassNotFoundException

这是我的错误代码。 我的classes12.jar已作为外部jar导入。 import java.io.IOException; import java.io.PrintWriter; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class LoginAction extends HttpServlet { Connection conn; Statement stmt; ResultSet rs; String query = “SELECT * FROM v_urja_login”; protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { PrintWriter out […]

不能在JDBC PreparedStatement中使用LIKE查询?

查询代码和查询: ps = conn.prepareStatement(“select instance_id, ? from eam_measurement where resource_id in (select RESOURCE_ID from eam_res_grp_res_map where resource_group_id = ?) and DSN like ‘?’ order by 2″); ps.setString(1,”SUBSTR(DSN,27,16)”); ps.setInt(2,defaultWasGroup); ps.setString(3,”%Module=jvmRuntimeModule:freeMemory%”); rs = ps.executeQuery(); while (rs.next()) { bla blah blah blah … 返回一个空ResultSet 。 通过基本的调试我发现它的第三个绑定是问题,即 DSN like ‘?’ 我尝试了各种各样的变化,其中最明智的似乎是使用: DSN like concat(‘%’,?,’%’) 但这不起作用,因为我错过了连接字符串两侧的’所以我尝试: DSN like ‘ concat(‘%’,Module=P_STAG_JDBC01:poolSize,’%’) […]

执行匿名pl / sql块并在java中获取结果集

我想执行匿名PL / SQL并需要获取结果集对象。 我得到的代码可以通过在PL / SQL块中使用游标来完成。 但PL / SQL块本身将作为文本来自数据库。 所以我无法编辑那个PL / SQL块。 并且它将仅返回两个值,其列名将始终相同。 它将返回2列组合值的列表。 这里我给出了PL / SQL示例。 BEGIN RETURN ‘select distinct fundname d, fundname r from where condition order by 1’; EXCEPTION WHEN OTHERS THEN RETURN ‘SELECT ”Not Available” d, ”Not Available” r FROM dual’; END; 任何回复都会非常有帮助。

使用JDBC连接器5.1从Java读取/写入MySQL中的UTF-8数据时出现问题

我有一个场景,有两个MySQL数据库(UTF-8),一个Java代码(一个定时服务),它同步两个数据库(首先读取表单并编写/更新到第二个)和一个允许修改数据加载的Web应用程序第二个数据库。 所有数据库访问都是使用IBATIS进行的(但我发现使用JDBC, PreparedStatement和ResultSet我遇到了同样的问题) 当我的java代码从第一个数据库读取数据时,我得到的字符就像’ó’ ,实际上它必须是’ó’ 。 这些数据是在没有修改第二个数据库的情况下编写的。 后来,当我在我的Web应用程序中看到加载的数据时,尽管 ,我看到了外部字符。 如果我使用…解码数据 new String(data.getBytes(“UTF-8”)); ……我正确地想象了角色(ó)。 但我不能将此解决方案作为一般规则使用,因为当我使用Web应用程序表单修改数据时,我的第二个数据库中的数据不会以UTF-8更新(尽管数据库是UTF-8且我的连接字符串使用了字符编码, characterSetResults和useUnicode参数)。 从我的Java代码中获取以下数据库设置: character_set_client–>utf8 character_set_connection–>utf8 character_set_database–>utf8 character_set_filesystem–>binary character_set_results–>utf8 character_set_server–>latin1 character_set_system–>utf8 character_sets_dir–>/usr/local/mysql51/share/mysql/charsets/ character_set_server设置无法更改,我不知道我做错了什么!! 如何使用JDBC连接器( mysql-connector-java-5.1.5-bin.jar )从MySQL读取UTF-8数据? 从第一个数据库读取数据或写入第二个数据库的问题是什么?

将jdbc驱动程序添加到类路径

好的我在Win Vista上正确设置我的MAVEN_HOME,JAVA_HOME。 但我还没有课程路径。 我也安装了MySQL。 现在我已经打开了一本Hibernate书,在第一页上它说“确保jdbc驱动程序在你的类路径中”。 我还下载了一些ZipJ文件,它是ConnectorJ或者某些名称,它基本上是java的mySql驱动程序…但我现在的问题是这句话,我不知道怎么做:“确保jdbc驱动程序在你的类路径中“你能帮我解决一下这个类路径吗? 谢谢

如何中止正在运行的JDBC事务?

有没有办法提前中止交易? 说,我已经向数据库发送了一个命令,该命令运行五分钟,四分之后,我想中止它。 JDBC是否定义了一种方法来向数据库发送“停止在此连接上执行的任何操作”信号?

如何在我的jsp中提供Java ResultSet?

我想换一个sql:query来查找一些用几个参数构建复杂查询的Java代码。 当前的sql是一个简单的选择。 如何获取我的Java ResultSet(即rs = stmt.executeQuery(sql);)并在我的JSP中提供结果,以便我可以使用这个教科书JSP? 为了更清楚,我想删除上面的查询并将其替换为Java。 我是否在Java部分设置了session / page变量,或者是否有一些我可以用来访问变量的EL技巧?

java错误(找不到合适的驱动程序)

public class ReportView extends JFrame { Connection con=null; void showReport() throws SQLException, ClassNotFoundException, JRException { con=DriverManager.getConnection(“jdbc:postgresql://localhost:5432/Test”); JasperReport report=JasperCompileManager.compileReport(“Testing.jrxml”); JasperPrint print=JasperFillManager.fillReport(report,null,con); JRViewer viewer=new JRViewer(print); viewer.setOpaque(true); viewer.setVisible(true); this.add(viewer); this.setSize(300, 200); this.setVisible(true); this.setDefaultCloseOperation(EXIT_ON_CLOSE); } 这是错误: 线程“main”java.sql.SQLException中的exception:没有为jdbc找到合适的驱动程序:postgresql:// localhost:5432 / Test at java.sql.DriverManager.getConnection(Unknown Source) at java.sql.DriverManager.getConnection(Unknown Source) 怎么了?

如何使用java JDBC获取MySql的数据库“Schema”名称列表

如何使用java JDBC获取MySql的数据库“Schema”名称列表?