我编了个java程序,在java中连接MS SQL Server 2000数据库
程序如下:
import java.sql.*;
public class JDBCTest
{
public static void main(String userPwd =ing[] args)
{
String driverName = “com.microsoft.jdbc.sqlserver.SQLServerDriver”;
String dbURL = “jdbc:microsoft:sqlserver://192.168.0.97:1433; DatabaseName=wtest”;
String userName ="sa";
String userPwd = "sa";try
{
Class.forName(driverName);
dbConn = DriverManager.getConnection(dbURL, userName, userPwd);
System.out.println(”Connection Successful!”);
}
Catch (Exception e) {
e.printStackTrace();
}
dbConn.close();
}
}注:192.168.0.97是我的服务器,其上有一数据库wtest,wtest中有一表book。
程序运行结果为:
Connection Successful!
说明连接数据库成功了。
然后我在程序中加了一部分内容,想把表book中各记录的bookID字段(varchar类型)输出。
程序如下:import java.sql.*;
public class JDBCTest
{
public static void main(String[] args)
{
String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
String dbURL = "jdbc:microsoft:sqlserver://192.168.0.97:1433; DatabaseName=wtest";
String userName = "sa";
String userPwd = "sa";
Connection dbConn;
try
{
Class.forName(driverName);
dbConn = DriverManager.getConnection(dbURL, userName, userPwd);
if(dbConn!=null)
System.out.println("Connection Successful!");
Statement stmt=dbConn.createStatement();
ResultSet rst=stmt.executeQuery("select * from book;");
while(rst.next())
{
String id=rst.getString("bookID");
System.out.println(id);
}
//关闭连接、释放资源
rst.close();
stmt.close();
dbConn.close();
}
catch(Exception e)
{
e.printStackTrace();
}
}
}此时程序运行结果为:Connection Successful!
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]对象名 'book' 无效。请问这是怎么回事?请高手指教!不胜感激!谢谢!
程序如下:
import java.sql.*;
public class JDBCTest
{
public static void main(String userPwd =ing[] args)
{
String driverName = “com.microsoft.jdbc.sqlserver.SQLServerDriver”;
String dbURL = “jdbc:microsoft:sqlserver://192.168.0.97:1433; DatabaseName=wtest”;
String userName ="sa";
String userPwd = "sa";try
{
Class.forName(driverName);
dbConn = DriverManager.getConnection(dbURL, userName, userPwd);
System.out.println(”Connection Successful!”);
}
Catch (Exception e) {
e.printStackTrace();
}
dbConn.close();
}
}注:192.168.0.97是我的服务器,其上有一数据库wtest,wtest中有一表book。
程序运行结果为:
Connection Successful!
说明连接数据库成功了。
然后我在程序中加了一部分内容,想把表book中各记录的bookID字段(varchar类型)输出。
程序如下:import java.sql.*;
public class JDBCTest
{
public static void main(String[] args)
{
String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
String dbURL = "jdbc:microsoft:sqlserver://192.168.0.97:1433; DatabaseName=wtest";
String userName = "sa";
String userPwd = "sa";
Connection dbConn;
try
{
Class.forName(driverName);
dbConn = DriverManager.getConnection(dbURL, userName, userPwd);
if(dbConn!=null)
System.out.println("Connection Successful!");
Statement stmt=dbConn.createStatement();
ResultSet rst=stmt.executeQuery("select * from book;");
while(rst.next())
{
String id=rst.getString("bookID");
System.out.println(id);
}
//关闭连接、释放资源
rst.close();
stmt.close();
dbConn.close();
}
catch(Exception e)
{
e.printStackTrace();
}
}
}此时程序运行结果为:Connection Successful!
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]对象名 'book' 无效。请问这是怎么回事?请高手指教!不胜感激!谢谢!
ResultSet rst=stmt.executeQuery("select * from book;");
再修改一下
ResultSet rst=stmt.executeQuery("select * from book");
JAVA中写SQL语句不加分号吧!仔细,仔细,再仔细。认真看了错了,进步才是实实在在的
一起学习啊,一起实在的进步
Connection Successful!
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]对象名 'book' 无效。
System.out.println(sql); //打印一下sql看放到数据库能不能查到数据
ResultSet rst=stmt.executeQuery(sql);
while(rst.next())
{
String id=rst.getString(1);
String id=rst.getString(2); System.out.println(id);
}
System.out.println(sql); //打印一下sql看放到数据库能不能查到数据
ResultSet rst=stmt.executeQuery(sql);
while(rst.next())
{
String id=rst.getString(1);
String name=rst.getString(2); System.out.println(id);
}
还是不行,和原来一样的错误。
改成了:select * from wtest.dbo.book 就可以了,谢谢大家,我一会儿结贴给分哈。
这是什么哦 你的表怎么放的哦???????
这句话有毛病呀 呀呀 !!
你 在 //192.168.0.114:1433;(此处有一个空格)DatabaseName=wtest";他们的 中间加了“~~空格~~~” 你把空格去掉就可以找到 wtest的数据库了! 有空格的时候虽然是连接成功了 但是并没有找到任何的Database!