Tag: jdbc

JDBC中缺少dll

我目前正在使用Java中的SQL。 最近我收到了这个错误: com.microsoft.sqlserver.jdbc.AuthenticationJNI WARNING: Failed to load the sqljdbc_auth.dll cause : no sqljdbc_auth in java.library.path 当我添加参数integratedSecurity=true;时会发生这种情况integratedSecurity=true; 在连接字符串中。 错误消息清楚地表明缺少sqljdbc_auth.dll,所以我尝试将dll放在与保留sqljdbc4.jar相同的路径中。 但是,这不起作用,所以我想知道我实际上如何将这个dll添加到我的构建路径? 有没有特殊的方法呢?

Java JDBC – 如何使用tnsnames.ora连接到Oracle

tnsnames.ora文件包含Databases及其描述( host + port )。 是否可以依赖上述文件建立连接? (假设仅提供数据库名称): 为了找到这个文件,我必须知道默认的oracle home我需要在Windows注册表中检查HKEY_LOCAL_MACHINE\Software\Oracle ,然后获取所有KEY_XXX文件,然后检查哪一个首先出现在%PATH% 。 有没有办法在客户端计算机上自动查找此文件?

当我的应用程序失去连接时,我应该如何恢复它?

我有一个应用程序,我正在连接到MySQL数据库。 它在半夜失去连接,然后喷出null连接,并且JDBC在X秒内没有收到消息。 在我做任何需要与SQL服务器通信的事情之前,我调用了getConnection() 。 这是我的getConnection()方法: private Connection getConnection() { try { if (connection != null) { if (connection.isClosed() || !connection.isValid(10000)) { this.initializeRamsesConnection(); } } else { this.initializeRamsesConnection(); } } catch (Exception e) { debug(“Connection failed: ” + e); } return connection; } 在initializeRamsesConnection()方法中,我将密码等信息放入字符串中,然后以标准JDBC方式创建连接。 然后我称这个方法: private Connection getConnectionFromConnectionString() { Connection con = null; String driver = […]

使用数据库数据填充jTable

我正在尝试使用我的Derby数据库数据填充Netbeans GUI-builder jTable。 我在我的Account.java类中使用以下代码: public DefaultTableModel getData() { try { String stmt = “SELECT * FROM APP.DATAVAULT”; PreparedStatement ps = Main.getPreparedStatement(stmt); ResultSet rs = ps.executeQuery(); ResultSetMetaData md = rs.getMetaData(); int columnCount = md.getColumnCount(); Vector columns = new Vector(columnCount); //store column names for (int i = 1; i <= columnCount; i++) { columns.add(md.getColumnName(i)); } Vector data […]

指定的DSN包含体系结构不匹配错误

我收到了这个错误: 指定的DSN包含驱动程序和应用程序之间的体系结构不匹配 尝试使用NetBeans和Java编程语言连接到数据库时 我正在使用Microsoft Access 2010和我的系统在64位Windows 7上运行。 我该如何解决这个问题? 感谢大家。

返回ResultSet

我正在尝试创建一个方法,从中我可以查询我的数据库并检索整个表。 目前,如果我使用方法中的数据,它的工作正常。 但是,我希望该方法返回结果。 我得到一个java.sql.SQLException: Operation not allowed after ResultSet closed在当前代码java.sql.SQLException: Operation not allowed after ResultSet closed 。 我怎样才能做到这一点? public ResultSet select() { con = null; st = null; rs = null; try { con = DriverManager.getConnection(url, user, password); st = con.createStatement(); rs = st.executeQuery(“SELECT * FROM biler”); /* if (rs.next()) { System.out.println(rs.getString(“model”)); }*/ } catch […]

从JDBC MSSQL获取返回值

我使用Microsoft SQL Server JDBC Driver 2.0通过Java连接到SQL Server(2005)。 如何从存储过程中获取返回值? 我做的事情如下: Connection connection = dataSource.getConnection() CallableStatement proc = connection.prepareCall(“{ call dbo.mySproc() }”); proc.execute(); 我应该使用execute()吗? 的executeQuery()? 的executeUpdate()? 这些似乎都没有默认返回值,但我不确定如何达到它。 编辑1:要清楚,我知道如何调用存储过程。 这个问题具体是关于如何获得返回值(而不是结果集)。 返回值是一个整数,通常在执行没有结果集的查询时生成,或者在SQL中特别声明RETURN 0 。 编辑2:executeUpdate()返回一个int,但是这个int与返回值不同。 此外,OUT参数与返回值不同。

ClassCastException:java.math.BigInteger在连接MySQL时无法强制转换为java.lang.Long

连接到MySQL时,出现错误(见下文)。 点击这里查看代码 我得到这个输出: run: Now connecting to databse… java.sql.SQLException: java.lang.ClassCastException: java.math.BigInteger cannot be cast to java.lang.Long java.sql.SQLException: java.lang.ClassCastException: java.math.BigInteger cannot be cast to java.lang.Long at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1074) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:988) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:974) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:919) at com.mysql.jdbc.ConnectionImpl.buildCollationMapping(ConnectionImpl.java:1062) at com.mysql.jdbc.ConnectionImpl.initializePropsFromServer(ConnectionImpl.java:3556) at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2513) at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2283) at com.mysql.jdbc.ConnectionImpl.(ConnectionImpl.java:822) at com.mysql.jdbc.JDBC4Connection.(JDBC4Connection.java:47) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at com.mysql.jdbc.Util.handleNewInstance(Util.java:411) […]

将jdbc连接代码放在servlet类中是个好主意吗?

我是servlet和database的core.java 。我有一个core.java文件,其中我有一个JDBC连接代码。在同一目录中,我有一个coreServlet.java文件,它从HTML页面获取表单值。我的问题是: 如何在两个java类之间进行交互,例如,如何使用从servlet(coreServlet.java)中的HTML表单到我的core.java文件的变量,以便将其存储在我的数据库中? 将我的jdbc连接代码放在coreServlet.java中是一个更好的主意吗? 我的项目结构如下: – aarya(project name) | – WEB-INF | | -web.xml -src | -pkg | -CoreServlet.java(servlet to interact HTML form) -Main.java -Core.java(jdbc code is here to interact database) | -html | – core.html | – css | -core.css | -javascript | -core.js | – lib | -index.html

本机库sqljdbc_auth.dll已经加载到另一个类加载器中

我有2个Java Web应用程序需要使用Windows集成身份validation连接到SQL Server数据库。 加载的第一个工作正常,但第二个抛出exception: Native Library sqljdbc_auth.dll already loaded in another classloader 当我将sqljdbc_auth.dll放在其中一个文件夹中时,会出现上述错误: C:\ WINDOWS \ SYSTEM32 \ C:\ Program Files \ Apache Software Foundation \ Tomcat 7.0 \ bin \ 如果我将sqljdbc_auth.dll放在下面的一个文件夹中: 每个Web应用程序的/ WEB-INF / lib目录 C:\ Program Files \ Apache Software Foundation \ Tomcat 7.0 \ lib \ 两个应用程序抛出exception: Failed to load the sqljdbc_auth.dll […]