一个连接数据库问题SQLserver
java吧
全部回复
仅看楼主
level 7
holy_Mesird 楼主

我现在是win7的64位本本,安装的是SqlServer 2008版本的,使用Sql Server身份已经设置可以登录数据库了,但是在使用java连接数据库的时候就不行,说无法登录,这个问题怎么办?
2012年12月03日 15点12分 1
level 7
holy_Mesird 楼主
2012年12月03日 15点12分 2
level 7
holy_Mesird 楼主

账号和密码肯定都是对的,都是我刚创建的用户名和密码,帮忙看看到底是哪里的问题
2012年12月03日 15点12分 3
我怎么觉得你连接的URL有问题。。。
2012年12月04日 00点12分
回复@飛羽灬 :我也感觉可能是url的问题,我对数据库的url没有一个概念,不知道是什么,我这个是从网上找的一个url抄上去的,数据库Class是有的
2012年12月04日 01点12分
回复 holy_Mesird :呃…… 我没有MS SQL 所以无法帮你测试, 你多找几个例子看看
2012年12月04日 01点12分
回复@飛羽灬 :好的,谢谢了啊
2012年12月04日 01点12分
level 14
你调试下服务,我对这个也不熟悉,只是每个都开关,开关……的试
2012年12月03日 15点12分 4
有点多,我也不是很熟悉,我怕不小心打开某个开关忘了,结果之后出来一系列问题
2012年12月03日 17点12分
吧务
level 15
不懂。感觉SQL Server总出问题。。。你看看TCP连接打开了没。。。
2012年12月03日 18点12分 7
mssqlserver和expess这两个的tcp/ip都启用了,ip地址为127.0.0.1,端口为1433的ip地址也启用了。。
2012年12月04日 01点12分
level 12
设断点看看~
2012年12月03日 18点12分 8
这个真不会,java抛出的异常说getconnection那行出错了。
2012年12月04日 01点12分
这个可以有!!!调试一下
2012年12月04日 01点12分
回复@少年了没 :是调试java程序吗,debug我还不怎么会用诶[汗]
2012年12月04日 01点12分
回复 holy_Mesird :连接错误,你先确定url对不?我没用过sqlserver,我只会看别人调试 嘿嘿
2012年12月04日 01点12分
level 13
个人觉得oracle更好
2012年12月04日 00点12分 9
主要是没学过oracle,只学过sqlserver,以后应该会改过来的吧
2012年12月04日 01点12分
level 10
[汗]你自己登录的时候把用户名输入错了。
2012年12月04日 01点12分 12
没有啊,我添加的用户名是MESIRD没错啊
2012年12月04日 02点12分
level 8
你检查下的登录模式是否是混合模式登录
2012年12月04日 02点12分 13
没错的,我的sqlaerver可以登陆的,已经设置为sql server和windows身份登陆了
2012年12月04日 02点12分
level 10
目测TCP协议。
2012年12月04日 02点12分 14
你把ip地址改成localhost可以连接成功的话。就应该是TCP没有配置好。
2012年12月04日 02点12分
回复@T64_jg :localhost也试过了。。
2012年12月04日 03点12分
level 12
我也是用的Sql server2008,连接无问题,不过也遇到过tcp/ip问题,你吧把tcp打开后,把sql服务关了再启动。
2012年12月04日 03点12分 15
肯定会重启服务的啊。[吐舌]
2012年12月04日 04点12分
level 10
1.先检查TCP协议。
2.换sa 连接。我感觉可能是你的用户名缺少权限。
如果你的协议都是弄好的。并且是换了sa也登录不了。
那就真心不知道了。基本上连接失败大多是至少我碰到的都是协议或者服务没开。
2012年12月04日 03点12分 16
level 7
holy_Mesird 楼主
@
T64_jg
为什么我的第一个IP地址不是127.0.0.1呢,127.0.0.1在后面
2012年12月04日 04点12分 17
level 10
首先测试一下你的连接的账号有没有开
2012年12月04日 04点12分 18
有没有开?这个是什么意思?
2012年12月04日 04点12分
回复 holy_Mesird :你的第一个图,MESIRD可以登上吗?还有,对于你的SQL错误等情况,我之前多少都遇到过,也写了总结。有SQLSERVER的错误分析,也有oracle的错误分析http://hi.baidu.com/new/xiuyuanvip
2012年12月04日 04点12分
2012年12月04日 04点12分
回复 xiuyuanvip :不是的,我的数据库SqlServer是能登上的,但是想通过java来登录的时候他就说MESIRD无法登录了,我还给MESIRD这个用户修改了权限为sysadmin
2012年12月04日 04点12分
level 7
holy_Mesird 楼主
package Default;
import java.sql.*;
public class JJpro {
public static void main(String[] args) {
Connection conn = null;
Statement stat = null;
ResultSet rs = null;
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String url = "jdbc:sqlserver://218.72.84.219:1433;DatabaseName=Class";
String username = "MESIRD";
String password = "123456";
conn = DriverManager.getConnection(url,username,password);
stat = conn.createStatement();
rs = stat.executeQuery("select * from users");
while(rs.next()) {
System.out.println(rs.getString("userID"));
System.out.println(rs.getInt("userID"));
}
}
catch(ClassNotFoundException e) {
e.printStackTrace();
}
catch (SQLException e) {
e.printStackTrace();
}
finally {
try {
if ( rs!=null) {
rs.close();
rs = null;
}
if ( stat!=null) {
stat.close();
stat = null;
}
if ( conn!=null) {
conn.close();
conn = null;
}
}
catch (SQLException e) {
e.printStackTrace();
}
}
}
}
@
fgm2003
2012年12月04日 04点12分 19
level 11
既然提示是用户名登陆失败那数据库应该是连上了, 你看看是不是用户权限问题,要给用户赋予相应的数据库操作权限的
2012年12月04日 04点12分 20
MESIRD用户有两个权限,一个是public还有一个是sysadmin这两个不知道对不对
2012年12月04日 05点12分
level 7
holy_Mesird 楼主

错误报告:[88]
com.microsoft.sqlserver.jdbc.SQLServerException: 用户 'MESIRD' 登录失败。
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:197)
at com.microsoft.sqlserver.jdbc.TDSTokenHandler.onEOF(tdsparser.java:246)
at com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:83)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:2529)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:1905)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.access$000(SQLServerConnection.java:41)
at com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(SQLServerConnection.java:1893)
at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:4575)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:1400)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1045)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:817)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:700)
at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:842)
at java.sql.DriverManager.getConnection(DriverManager.java:579)
at java.sql.DriverManager.getConnection(DriverManager.java:221)
at Default.JJpro.main(JJpro.java:24)
2012年12月04日 06点12分 21
level 11
可不可以看看197代码? [瀑布汗~]
2012年12月04日 06点12分 22
把URL试试这样呢?jdbc:microsoft:sqlserver://127.0.0.1:1433;
2012年12月04日 06点12分
他的这个excption好像不是开源的,看不到源代码,我这没有197行
2012年12月04日 10点12分
这样写的话就是url错误了。。
2012年12月04日 10点12分
level 7
holy_Mesird 楼主
我在SqlServer登录服务器名称中把后面的\Express去掉了,然后在里面创建了一个新的用户就成功了,我不知道是不是因为这个问题。。。
2012年12月05日 02点12分 23
能借个图不?求助
2012年12月16日 08点12分
回复 年少的风brian :看28楼
2012年12月16日 14点12分
1 2 尾页