try
{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
Connection conn = null ;
PreparedStatement pstmt = null ;
ResultSet rs = null;
conn = DriverManager.getConnection("jdbc:microsoft:sqlserver:/"+"/localhost:1433; DatabaseName=Northwind", "sa", "1234");
String sqlstr = "select * from Categories";
pstmt = conn.prepareStatement(sqlstr); //调试的时候, 这里出错了。
rs = pstmt.executeQuery();
new FrameMain().setVisible(true);
this.dispose();
rs.close();
pstmt.close();
conn.close();
}
catch(Exception ex)
{
ex.printStackTrace();
this.dispose();
}
1.SQLSERVER已经安装了SP4补丁
2.我用的NETBEANS, 貌似都附带了驱动的那三个JAR包了。
3.出错的提示是:[Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]对象名 'Categories' 无效。
可是, 我用的是SQL附带的那个NORTHWIND数据库, Categories数据表, 账号密码都应该没错的了。
不知道哪里错了, 求救大大。
{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
Connection conn = null ;
PreparedStatement pstmt = null ;
ResultSet rs = null;
conn = DriverManager.getConnection("jdbc:microsoft:sqlserver:/"+"/localhost:1433; DatabaseName=Northwind", "sa", "1234");
String sqlstr = "select * from Categories";
pstmt = conn.prepareStatement(sqlstr); //调试的时候, 这里出错了。
rs = pstmt.executeQuery();
new FrameMain().setVisible(true);
this.dispose();
rs.close();
pstmt.close();
conn.close();
}
catch(Exception ex)
{
ex.printStackTrace();
this.dispose();
}
1.SQLSERVER已经安装了SP4补丁
2.我用的NETBEANS, 貌似都附带了驱动的那三个JAR包了。
3.出错的提示是:[Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]对象名 'Categories' 无效。
可是, 我用的是SQL附带的那个NORTHWIND数据库, Categories数据表, 账号密码都应该没错的了。
不知道哪里错了, 求救大大。
解决方案 »
- 计算成绩或钱。经常遇到结果算完后为100.123456789123.。。后面好多小数如何精确到小数点后几位?
- 高手门指教!!进销存软件中的先进先出问题???急急啊!!谢谢了
- 用java与sql写数据库时的查询问题!!!急等
- 关于java实现数据可视化的问题,该采用什么工具?
- (100分)怎么样删除JTable的选定的多行?
- 请问哪里有JCreator LE V2.50 Build 008的中文帮助!谢谢!
- 怎么根据jdbc中select返回结果,处理流程?
- 有谁知道组播与广播的区别?需要比较系统的答案!一定给高分呀!
- 问:Jdeveloper怎样设置才能使写代码更方便一点啊?比如自动换行等功能!
- java socket 用数组缓冲循环读取xml数据随机个别中文乱码
- 初学java的一个问题
- 遇到一个java麻烦的问题
select * from Categories
在查询分析器, 这样OK
{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
Connection conn = null ;
Statement pstmt = null ;
ResultSet rs = null;
conn = DriverManager.getConnection("jdbc:microsoft:sqlserver://" + "localhost" + ":" + "1433" +
";databaseName=" + "dbJavaMIS" + ";selectMethod=" + "cursor" +";" , "sa", "1234");
String text1 = jtfName.getText();
String text2 = jtfPassword.getText();
String sqlstr = "select * from T_User where [Name]='" + text1 + "' and [Password]='" + text2 + "'";
pstmt = conn.createStatement();
rs = pstmt.executeQuery(sqlstr);
rs.last(); //这里提示出错
int count = rs.getRow(); //存放记录的条数
if(count != 0)
{
new FrameMain().setVisible(true);
this.dispose();
rs.close();
pstmt.close();
conn.close();
}
else
{
//输出账号密码错误!
jLabel3.setText("无此账号密码!");
}
}
catch(Exception ex)
{
ex.printStackTrace();
System.out.println("Error Trace in getConnection() : " + ex.getMessage());
this.dispose();
}
今天我上网找了很久, 把代码这样改了, 就能连接了。
不过, rs.last();提示出错。 [Microsoft][SQLServer 2000 Driver for JDBC]Unsupported method: ResultSet.last
这个应该怎样搞呢?
{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
Connection conn = null ;
Statement pstmt = null ;
ResultSet rs = null;
conn = DriverManager.getConnection("jdbc:microsoft:sqlserver://" + "localhost" + ":" + "1433" +
";databaseName=" + "dbJavaMIS" + ";selectMethod=" + "cursor" +";" , "sa", "1234");
String text1 = jtfName.getText();
String text2 = jtfPassword.getText();
String sqlstr = "select * from T_User where [Name]='" + text1 + "' and [Password]='" + text2 + "'";
pstmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
rs = pstmt.executeQuery(sqlstr);
//存放记录的条数
rs.last();
int count = rs.getRow(); //last位置的ROWINDEX
if(count != 0)
{
new FrameMain().setVisible(true);
this.dispose();
rs.close();
pstmt.close();
conn.close();
}
else
{
//输出账号密码错误!
jLabel3.setText("无此账号密码!");
}
}
catch(Exception ex)
{
ex.printStackTrace();
System.out.println("Error Trace in getConnection() : " + ex.getMessage());
this.dispose();
}
我终于搞好了, 呵呵