JAVA SQLSERVER 连接

AC903919 2009-11-11 10:40:00
我写了一个连接SQLSERVER的类,但是报错
com.microsoft.sqlserver.jdbc.SQLServerException: 到主机 的 TCP/IP 连接失败。 java.net.ConnectException: Connection refused: connect

大家帮忙看看代码哪里错了
package cn.ctgu.edu.ac;
import java.sql.*;

public class connect {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String url="jdbc:sqlserver://localhost:1433;Database=网上书店管理系统;integratedSecurity=true;"; //用widows身份登录
String sql="select * users";
Connection conn=null;
try
{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
conn=DriverManager.getConnection(url);
Statement SQLStatement=conn.createStatement();
ResultSet rt=SQLStatement.executeQuery(sql);
while(rt.next())
{
System.out.println(rt.getInt("userID")+""+rt.getString("username"));
}
if(rt!=null)
{
rt.close();
}
if(SQLStatement!=null)
{
SQLStatement.close();
}
}
catch(Exception e)
{
e.printStackTrace();
}

}
}

还有,在url中的端口号应该是IPAll中的哪一个?
...全文
434 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
guochenyanglantian 2012-04-09
  • 打赏
  • 举报
回复
各位再帮忙看一下如果出这样的错怎么解决 十分感谢

Exception in thread "main" java.lang.UnsatisfiedLinkError: com.microsoft.sqlserver.jdbc.AuthenticationJNI.GetDNSName(Ljava/lang/String;[Ljava/lang/String;Ljava/util/logging/Logger;)I
at com.microsoft.sqlserver.jdbc.AuthenticationJNI.GetDNSName(Native Method)
at com.microsoft.sqlserver.jdbc.AuthenticationJNI.GetDNSName(AuthenticationJNI.java:109)
at com.microsoft.sqlserver.jdbc.AuthenticationJNI.<init>(AuthenticationJNI.java:63)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:2229)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.access$000(SQLServerConnection.java:41)
at com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(SQLServerConnection.java:2220)
at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:5696)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:1715)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1326)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:991)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:827)
at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:1012)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at Base.template(Base.java:22)
at Base.main(Base.java:9)
laker_914 2009-11-12
  • 打赏
  • 举报
回复
//用widows身份登录

jdbc 可以用windows身份登录吗??

看你的1433端口有没有打开啊
AC903919 2009-11-12
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 lwuit 的回复:]
没有连接上 检查sql 是否正常访问。
检查 连接字符串
[/Quote]

服务都开启了,sqlserver的监视端口是哪个,是TCP动态端口还是TCP端口?
还有,驱动我装了的!
smileq18 2009-11-12
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 zl3450341 的回复:]
1,服务开启了没有
2,sqlserver的TCP/IP协议开了没有

String sql="select * users";
你这是啥sql语句呢
[/Quote]
查看一下你的sqlserver的监视端口是不是1433;
改用下sqlserver登陆验证试试看
lillian1205 2009-11-12
  • 打赏
  • 举报
回复
首先用ODBC连下,看数据库能不能连上,若不能连上,查数据库
若能连上,就是java这部分连数据库的原因。

用microsoft的驱动连数据库,需要安装JDBC驱动,不知道LZ安装了没有,若没有安装数据库也连接不上。
建议使用jtds驱动连接,这个不必安装JDBC驱动
yayagouxiong 2009-11-12
  • 打赏
  • 举报
回复
url="jdbc:microsoft:sqlserver://localhost:1433..."丢了一个microsoft吧
zl3450341 2009-11-12
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 ac903919 的回复:]
现在报错是:
com.microsoft.sqlserver.jdbc.SQLServerException: 没有为集成身份验证配置驱动程序。
这又是怎么回事啊?
[/Quote]
用windows混合验证登陆
AC903919 2009-11-12
  • 打赏
  • 举报
回复
现在报错是:
com.microsoft.sqlserver.jdbc.SQLServerException: 没有为集成身份验证配置驱动程序。
这又是怎么回事啊?
zl3450341 2009-11-12
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 ac903919 的回复:]
引用 1 楼 lwuit 的回复:
没有连接上 检查sql 是否正常访问。
检查 连接字符串


服务都开启了,sqlserver的监视端口是哪个,是TCP动态端口还是TCP端口?
还有,驱动我装了的!

[/Quote]

进SQL Server Configuration Manager看网络配置和客户端协议 看tcp/ip协议开启没有
treesky 2009-11-12
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 qiheia 的回复:]
赞同2楼的说法,
SQLSERVER 安装好后,默认的Tcp/ip是关闭的,将其打开就可以了。。

在一个检查下服务是否开启

还有你的sql语句错了,少了一个from关键字。。。


[/Quote]
还有推荐一个访问SQLserver的包

jtds
qiheia 2009-11-12
  • 打赏
  • 举报
回复
赞同2楼的说法,
SQLSERVER 安装好后,默认的Tcp/ip是关闭的,将其打开就可以了。。

在一个检查下服务是否开启

还有你的sql语句错了,少了一个from关键字。。。

「已注销」 2009-11-12
  • 打赏
  • 举报
回复
好像没有用户名和密码吧
AC903919 2009-11-12
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 yayagouxiong 的回复:]
url="jdbc:microsoft:sqlserver://localhost:1433..."丢了一个microsoft吧

[/Quote]

JDBC驱动是不是sqljdbc_1.2.2828.100_chs这个?
solu 2009-11-11
  • 打赏
  • 举报
回复
用 数据源来链接,我连SQL2008也是这种情况,后来用数据源就可以了
zl3450341 2009-11-11
  • 打赏
  • 举报
回复
1,服务开启了没有
2,sqlserver的TCP/IP协议开了没有

String sql="select * users";
你这是啥sql语句呢
阁楼上的伟哥 2009-11-11
  • 打赏
  • 举报
回复
没有连接上 检查sql 是否正常访问。
检查 连接字符串

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧