import java.sql.*;
import java.net.*;public class sqltry
{
public static void executeUpdateStatement(Connection con)
{ try
{
String SQL = "SELECT * FROM [test].[dbo].[学校代码表] ORDER BY 最低分数";
String SQL2 ="INSERT INTO [test].[dbo].[学校代码表]([学校代码],[学校名],[招生人数],[最低分数]) VALUES (001,ybo1,2000,469)";
Statement stmt = con.createStatement();
int count = stmt.executeUpdate(SQL2);
//关了Statement
stmt.close();
System.out.println("use test datebase "+"ROWS AFFECTED: " + count);
//再建一Statement,下边的ResultSet用这个得到
Statement st = con.createStatement();
ResultSet rs = st.executeQuery(SQL);
while(rs.next())
{
System.out.println(rs.getString("学校名") + ", " + rs.getString("学校代码"));
}
//关闭后来建的Statement
st.close();
rs.close();
}
catch (Exception e)
{e.printStackTrace();}
}
public static void main (String[] args)
{
String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
String dbURL = "jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=test;";
String userName = "lysander";
String userPwd = "";
Connection dbconn=null;
try
{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
dbconn=DriverManager.getConnection(dbURL, userName, userPwd);
System.out.println("Connection Successful!");
}
catch (Exception e)
{ e.printStackTrace(); }
sqltry.executeUpdateStatement(dbconn);
}
//public sqltry()
//{
//}}
经过高人指点,基本都没有什么语法错误了,但是,没有预想的结果
java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver
at java.net.URLClassLoader$1.run(URLClassLoader.java:199)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:141)
at sqltry.main(sqltry.java:42)
java.lang.NullPointerException
at sqltry.executeUpdateStatement(sqltry.java:13)
at sqltry.main(sqltry.java:49)Process completed.
输出返回的是这个东西,我到底哪里有问题了,请高人指点以下,谢谢咯
import java.net.*;public class sqltry
{
public static void executeUpdateStatement(Connection con)
{ try
{
String SQL = "SELECT * FROM [test].[dbo].[学校代码表] ORDER BY 最低分数";
String SQL2 ="INSERT INTO [test].[dbo].[学校代码表]([学校代码],[学校名],[招生人数],[最低分数]) VALUES (001,ybo1,2000,469)";
Statement stmt = con.createStatement();
int count = stmt.executeUpdate(SQL2);
//关了Statement
stmt.close();
System.out.println("use test datebase "+"ROWS AFFECTED: " + count);
//再建一Statement,下边的ResultSet用这个得到
Statement st = con.createStatement();
ResultSet rs = st.executeQuery(SQL);
while(rs.next())
{
System.out.println(rs.getString("学校名") + ", " + rs.getString("学校代码"));
}
//关闭后来建的Statement
st.close();
rs.close();
}
catch (Exception e)
{e.printStackTrace();}
}
public static void main (String[] args)
{
String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
String dbURL = "jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=test;";
String userName = "lysander";
String userPwd = "";
Connection dbconn=null;
try
{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
dbconn=DriverManager.getConnection(dbURL, userName, userPwd);
System.out.println("Connection Successful!");
}
catch (Exception e)
{ e.printStackTrace(); }
sqltry.executeUpdateStatement(dbconn);
}
//public sqltry()
//{
//}}
经过高人指点,基本都没有什么语法错误了,但是,没有预想的结果
java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver
at java.net.URLClassLoader$1.run(URLClassLoader.java:199)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:141)
at sqltry.main(sqltry.java:42)
java.lang.NullPointerException
at sqltry.executeUpdateStatement(sqltry.java:13)
at sqltry.main(sqltry.java:49)Process completed.
输出返回的是这个东西,我到底哪里有问题了,请高人指点以下,谢谢咯
classpath中要加入SqlServer的驱动
你到这里去下个补丁(sql2ksp4)http://www.itmhu.cn/soft/8/80/2007/200702132586.html
记住解压了要安装才可以.
配置环境 在claspath中增加(和jdk配置累路径是一样的,就是为了让系统找到这个驱动类)
C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\msbase.jar;
C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\mssqlserver.jar;
C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\msutil.jar;
可能你的安装目录不在c盘,但是这三个文件一定要配,如果你用的是Eclipse就可以在Eclipse中直接把这三个jar文件导进去;
import java.net.*;public class sqltry
{
public static void executeUpdateStatement(Connection con)
{ try
{
String SQL = "SELECT * FROM [test].[dbo].[学校代码表] ORDER BY 最低分数";
String SQL2 ="INSERT INTO [test].[dbo].[学校代码表]([学校代码],[学校名],[招生人数],[最低分数]) VALUES (001,ybo1,2000,469)";
Statement stmt = con.createStatement();
int count = stmt.executeUpdate(SQL2);
//关了Statement
stmt.close();
System.out.println("use test datebase "+"ROWS AFFECTED: " + count);
//再建一Statement,下边的ResultSet用这个得到
Statement st = con.createStatement();
ResultSet rs = st.executeQuery(SQL);
while(rs.next())
{
System.out.println(rs.getString("学校名") + ", " + rs.getString("学校代码"));
}
//关闭后来建的Statement
st.close();
rs.close();
}
catch (Exception e)
{e.printStackTrace();}
}
public static void main (String[] args)
{
String sDBDriver="com.microsoft.sqlserver.jdbc.SQLServerDriver";
String dbURL = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=test";
String userName = "lysander";
String userPwd = "";
Connection dbconn=null;
try
{
Class.forName(sDBDriver);
dbconn=DriverManager.getConnection(dbURL, userName, userPwd);
System.out.println("Connection Successful!");
}
catch (Exception e)
{ e.printStackTrace(); }
sqltry.executeUpdateStatement(dbconn);
}
//public sqltry()
//{
//}}
java.sql.SQLException: No suitable driver
at java.sql.DriverManager.getConnection(DriverManager.java:532)
at java.sql.DriverManager.getConnection(DriverManager.java:171)
at sqltry.main(sqltry.java:44)
java.lang.NullPointerException
at sqltry.executeUpdateStatement(sqltry.java:13)
at sqltry.main(sqltry.java:50)Process completed.
我用的2005,和2000的驱动不一样的,上面是我把哪个sqljdbc.jar文件复制到\j2sdk1.4.2_14\jre\lib\ext里稍微该了一下代码的结果,但是,还是不行,网络上的教程我大多数都是2000的
at sqltry.main(sqltry.java:50)//sqltry.executeUpdateStatement(dbconn);------------------------------------------------------------------------
你这2句不对,我想可能是Connection没有得到,你把你的这句String userName = "lysander";改成"sa"试下.你可能根本没有连到数据库,用户名对吗?