Tag: jdbc

一批中有两种不同的预处理语句

我想在一个批次中发送两个不同的预备语句 。 目前我在两个中这样做,你可以在注释行中看到并且它有效,但这不是这里的主要目标。 任何人都可以告诉我应该用什么来代替这些评论才能使这个东西起作用? import java.lang.ClassNotFoundException; import java.math.BigDecimal; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.SQLException; import java.sql.DriverManager; public class Main { public static void main(String[] args) { Connection connection = null; PreparedStatement preparedStatementWithdraw = null; PreparedStatement preparedStatementDeposit = null; try { Class.forName(“com.mysql.jdbc.Driver”); connection = DriverManager.getConnection(“jdbc:mysql://localhost:3306/youtube”, “root”, “root”); preparedStatementWithdraw = withdrawFromChecking(connection, preparedStatementWithdraw, new BigDecimal(100), 1); preparedStatementDeposit = […]

multithreadingJava应用程序中的SQLite

我编写了一个java应用程序,偶尔将事件从多个线程记录到SQLite数据库。 我注意到我可以通过同时生成少量事件来相对容易地触发SQLite的“数据库锁定”错误。 这促使我编写了一个模拟最坏情况行为的测试程序,我很惊讶SQLite在这个用例中表现得有多糟糕。 下面发布的代码只是将五条记录添加到数据库中,首先按顺序获取“控制”值。 然后同时添加相同的五个记录。 import java.sql.*; public class Main { public static void main(String[] args) throws Exception { Class.forName(“org.sqlite.JDBC”); Connection conn = DriverManager.getConnection(“jdbc:sqlite:test.db”); Statement stat = conn.createStatement(); stat.executeUpdate(“drop table if exists people”); stat.executeUpdate(“create table people (name, occupation)”); conn.close(); SqlTask tasks[] = { new SqlTask(“Gandhi”, “politics”), new SqlTask(“Turing”, “computers”), new SqlTask(“Picaso”, “artist”), new SqlTask(“shakespeare”, “writer”), […]

如何将java连接到Ms Access 2010?

有没有人有任何关于如何将Access 2010连接到java jdbc的想法。 我使用这种方法,但是当我调用它时,它不起作用: public void loadDb(){ try{ Class.forName(“sun.jdbc.JdbcOdbcDriver”); File f = new File(System.getProperty(“user.dir”)) con = DriverManager.getConnection(“jdbc:odbc:Driver={Microsoft Acess Driver (*.mdb, *.accdb)}; DBQ=”+ f.getPath() + “//db//JavaAccess.accd”,””,””); st = con. createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); }catch(ClassNotFoundException e){e.printStackTrace(); }catch(SQLException e){e.printStackTrace();} } //con and st are already defined

如何使用预准备语句设置当前日期和时间?

我在数据库中有一个数据类型为DATETIME的列。 我想使用`PreparedStatement将此列值设置为当前日期和时间。 我怎么做?

oracle jdbc中的PreparedStatement和setTimestamp

我在where子句中使用PreparedStatement和Timestamp: PreparedStatement s=c.prepareStatement(“select value,utctimestamp from t where utctimestamp>=? and utctimestamp<?"); s.setTimestamp(1, new Timestamp(1273017600000L)); //2010-05-05 00:00 GMT s.setTimestamp(2, new Timestamp(1273104000000L)); //2010-05-06 00:00 GMT ResultSet rs = s.executeQuery(); if(rs.next()) System.out.println(rs.getInt("value")); 当我在客户端计算机上有不同的时区时,我得到的结果是不同的。 这是Oracle jdbc中的错误吗? 还是纠正行为? Oracle数据库版本是10.2,我已经尝试使用oracle jdbc瘦驱动程序版本10.2和11.1。 参数是Timestamp,我预计在途中不会进行任何时间转换。 数据库列类型是DATE,但我也使用TIMESTAMP列类型检查它,结果相同。 有没有办法达到正确的结果? 我无法将整个应用程序中的默认时区更改为UTC。 谢谢你的帮助

将JDBC ResultSet映射到对象

我有一个具有16个属性的用户类,如firstname,lastname,dob,username,password等…这些都存储在MySQL数据库中,当我想要检索用户时,我使用ResultSet。 我想将每个列映射回用户属性,但我这样做的方式看起来非常低效。 例如我在做: //ResultSet rs; while(rs.next()) { String uid = rs.getString(“UserId”); String fname = rs.getString(“FirstName”); … … … User u = new User(uid,fname,…); //ArrayList users users.add(u); } 即我检索所有列,然后通过将所有列值插入到用户构造函数中来创建用户对象。 有谁知道更快,更整洁,这样做的方式?

Oracle通用连接池(UCP)有多好

有没有人有在实际生产负载下使用Oracle UCP的经验? 它是否能很好地处理数据库重新连接? 有任何multithreading问题吗? 有没有人将它与C3P0或Apache DBCP进行比较?

如果不使用返回值,Class.forName()的用途是什么?

我在示例应用程序中看到了使用商业JDBC驱动程序的这一行: Class.forName(“name.of.a.jcdb.driver”) 不使用返回值。 这条线的目的是什么?

为什么我们在连接数据库时使用Class.forName(“oracle.jdbc.driver.OracleDriver”)?

连接数据库时Class.forName(“oracle.jdbc.driver.OracleDriver”)的实际用途是什么? 为什么我们不能导入相同的类,而是我们为什么要加载它。

Java – 连接关闭后无法使用ResultSet

关闭与MySQL的连接时遇到问题。 我收到了错误: java.sql.SQLException:ResultSet关闭后不允许操作 我的代码: public static ResultSet sqlquery (String query) { ResultSet rs=null; Connection connection=null; Statement st=null; try{ Class.forName(“com.mysql.jdbc.Driver”); connection = DriverManager.getConnection(“databaseadress”,”username”,”password”); st = connection.createStatement(); rs = st.executeQuery(query); }catch(SQLException e){System.out.println(“SQL error: ” + e);} catch(Exception e){System.out.println(“Error: ” + e);} finally { try{ if(rs != null) rs.close(); if(st!= null) st.close(); if(connection != null) connection.close(); }catch(SQLException e){System.out.println(“SQL […]