如何从 JavaDB 读取数据
How to Read Data From JavaDB
我试图创建一个简单的 Java 应用程序,它将从 JavaDB 中读取数据。
目的是从数据库中获取第一个"UNAME"变量赋值给"user"变量并打印
package giris;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
/**
*
* @author Ibrahim
*/
public class Giris {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
String user = "";
System.out.println("hello world");
try
{
System.out.println("connecting to database");
Connection con = DriverManager.getConnection("jdbc:derby://localhost:1527/deneme", "ASD", "asd");
System.out.println("succesfully connected");
PreparedStatement pr = con.prepareStatement("select UNAME from ASD.Table1");
ResultSet rs = pr.executeQuery();
while(rs.next())
{
user = rs.getString(0);
}
}
catch(Exception e)
{
System.err.println("error");
}
System.out.println(user);
}
}
This is how my DB looks like
然而,当我 运行 应用程序输出是这样的:
run:
hello world
connecting to database
error
BUILD SUCCESSFUL (total time: 0 seconds)
您使用正确,可能是错误的 DB 详细信息。
顺便说一句,永远不要那样使用 catch 块,你丢失了存储在 e.
中的信息
使用以下代码获取更多信息:
public static void yourMethod()
{
try
{
// Some code...
}
catch(Exception e)
{
logError("Got exception during...", e);
}
}
public static void logError(String message, Throwable e)
{
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
e.printStackTrace(pw);
logError(message + "\n" + sw.toString());
}
public static void logError(String message)
{
System.err.println("[ERROR] " + message);
}
加载驱动class逻辑缺失,请补充
Class.forName("org.apache.derby.jdbc.ClientDriver").newInstance();
将此 derbyclient-10.2.2.0.jar 添加到 classpath
希望对您有所帮助
我试图创建一个简单的 Java 应用程序,它将从 JavaDB 中读取数据。 目的是从数据库中获取第一个"UNAME"变量赋值给"user"变量并打印
package giris;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
/**
*
* @author Ibrahim
*/
public class Giris {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
String user = "";
System.out.println("hello world");
try
{
System.out.println("connecting to database");
Connection con = DriverManager.getConnection("jdbc:derby://localhost:1527/deneme", "ASD", "asd");
System.out.println("succesfully connected");
PreparedStatement pr = con.prepareStatement("select UNAME from ASD.Table1");
ResultSet rs = pr.executeQuery();
while(rs.next())
{
user = rs.getString(0);
}
}
catch(Exception e)
{
System.err.println("error");
}
System.out.println(user);
}
}
This is how my DB looks like
然而,当我 运行 应用程序输出是这样的:
run:
hello world
connecting to database
error
BUILD SUCCESSFUL (total time: 0 seconds)
您使用正确,可能是错误的 DB 详细信息。
顺便说一句,永远不要那样使用 catch 块,你丢失了存储在 e.
中的信息使用以下代码获取更多信息:
public static void yourMethod()
{
try
{
// Some code...
}
catch(Exception e)
{
logError("Got exception during...", e);
}
}
public static void logError(String message, Throwable e)
{
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
e.printStackTrace(pw);
logError(message + "\n" + sw.toString());
}
public static void logError(String message)
{
System.err.println("[ERROR] " + message);
}
加载驱动class逻辑缺失,请补充
Class.forName("org.apache.derby.jdbc.ClientDriver").newInstance();
将此 derbyclient-10.2.2.0.jar 添加到 classpath
希望对您有所帮助