记录每次遇到的bug与异常
jdbc的下载地址与DBMS的配制方法见下文http://www.360doc.com/content/14/0806/02/15319145_399731507.shtml
我在测试链接的时候遇到了如下异常:
数据库驱动加载成功...
com.microsoft.sqlserver.jdbc.SQLServerException: 用户 'sa' 登录失败。 ClientConnectionId:ea4142b1-ae5c-4618-b6a5-c827b5205235
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:216)
at com.microsoft.sqlserver.jdbc.TDSTokenHandler.onEOF(tdsparser.java:254)
at com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:84)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:2908)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:2234)
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(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at test.TestSQLConnect.main(TestSQLConnect.java:16)
com.microsoft.sqlserver.jdbc.SQLServerException: 用户 'sa' 登录失败。 ClientConnectionId:ea4142b1-ae5c-4618-b6a5-c827b5205235
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:216)
at com.microsoft.sqlserver.jdbc.TDSTokenHandler.onEOF(tdsparser.java:254)
at com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:84)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:2908)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:2234)
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(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at test.TestSQLConnect.main(TestSQLConnect.java:16)
连接代码如下
public class TestSQLConnect { public static void main(String[] args){ String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; String dbURL = "jdbc:sqlserver://localhost:1433;databaseName=TestData"; String userName = "sa"; String userPwd = ""; try { Class.forName(driverName); System.out.println("数据库驱动加载成功..."); Connection dbConn = DriverManager.getConnection(dbURL, userName, userPwd); System.out.println("连接数据库成功"); }catch (Exception e) { e.printStackTrace(); System.out.print("连接失败"); } } }
如果用户名和密码没错的情况下,造成该异常的原因主要是TCP/IP端口的问题:
打开SQL SERVER 配置工具 中的SQL SERVER配置管理器。左边窗口扩展SQL SERVER 网络配置, 选择SQLEXPRESS 的协议(你的名字不一定是SQLEXPRESS), 右边窗口中双击TCP/IP, 弹出窗口中顶部TAB点"IP 地址", 看IPALL, 里面的TCP端口号才是你的URL端口号,可能有的朋友1433默认端口号被占用了,因此URL端口号被篡改了
上图是我今天装的SQL SERVER2012,由于1433端口号被MSSQLSERVER协议给占用了,因此我的SQLEXPRESS中TCP端口号是其他端口,因此导致连接错误。
只需要将EXPRESS中TCP/IP端口号修改一下,并重启数据库服务,并在程序URL中填上相应端口号即可。
希望以后有人遇到类似的问题能够看到
相关推荐
这通常包括`java.sql.Connection`、`java.sql.DriverManager`、`java.sql.SQLException`以及驱动特定的类,如`com.microsoft.sqlserver.jdbc.SQLServerDriver`。 ```java import java.sql.Connection; import ...
Connection conn = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName=myDatabase;user=myUsername;password=myPassword"); ``` 其中,URL参数指定服务器地址、端口、数据库名,以及...
总结来说,"java-sqlserver-connect.jar"是Java应用程序连接SQL Server数据库的关键组件,它为开发者提供了在Java环境中执行SQL查询和操作数据库的能力,同时支持JRE7和JRE8,确保了兼容性和灵活性。在实际项目中,...
` 例:`DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=pubs", "sa", "");` 在此处关键的是连接字符串的内容,localhost 部分即服务器的名字,可以更改;1433 部分为 SQL ...
String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=myDatabase"; String username = "yourUsername"; String password = "yourPassword"; ``` 这里的URL需要根据你的实际SQL Server实例的地址...
对于使用Java进行开发并且依赖于SQL Server作为数据库的企业来说,理解如何在Java环境中执行SQL Server数据库的备份至关重要。以下将详细介绍Java与SQL Server数据库备份相关的知识点。 1. **SQL Server备份类型**:...
DatabaseName=<database>`,例如`jdbc:sqlserver://localhost:1433;DatabaseName=test`。 7. **安全注意事项**: - 在生产环境中,不要在代码中硬编码数据库凭证,如用户名和密码,应使用环境变量或安全存储来管理...
String url = "jdbc:sqlserver://localhost:1433;databaseName=your_database"; String username = "your_username"; String password = "your_password"; try { Class.forName(...
"jdbc:sqlserver://10.10.21.240:1433;databaseName=A工020070916165839", "username", "password" ); ``` 需要注意的是,连接字符串中的参数可能会有所不同,具体取决于实际的服务器配置。 ##### 2. 读取Image...
标题“JAVA连接SqlServer2012”涉及到的核心技术是Java编程语言通过JDBC(Java Database Connectivity)接口与Microsoft SQL Server 2012数据库进行交互。JDBC是Java平台的标准,它提供了一套API,使得Java程序员...
总结来说,Java连接SQL Server 2000涉及到的主要知识点有:JDBC驱动的引入和配置、数据库连接的建立与关闭、SQL语句的执行、结果集的处理、异常处理、事务管理和连接池的使用。理解并熟练掌握这些概念,将有助于你在...
在Java编程环境中,连接SQL Server数据库通常需要特定的驱动程序,这些驱动程序使得Java应用程序能够通过JDBC(Java Database Connectivity)接口与SQL Server进行通信。本文将深入探讨如何使用Java连接SQL Server,...
- `jdbc:sqlserver://`:表示使用JDBC协议连接SQL Server。 - `localhost:1433`:指定了服务器地址为本地主机,端口号为1433,这是SQL Server默认的监听端口。 - `databaseName=DB_Address`:指定要连接的数据库名称...
本项目是基于Java编程语言和SQL Server数据库实现的网上银行管理系统,旨在提供安全、高效的在线交易服务。下面将详细介绍该系统涉及的主要知识点。 1. **Java编程语言**: Java是一种跨平台的面向对象编程语言,...
String url = "jdbc:sqlserver://localhost:1433;databaseName=myDatabase"; String user = "username"; String password = "password"; Connection conn = DriverManager.getConnection(url, user, password); ...
jdbc:sqlserver://localhost:1433;databaseName=myDatabase;user=myUsername;password=myPassword; ``` 连接步骤如下: 1. 引入JDBC驱动:在项目中添加mssql-jdbc驱动的jar包,如果是Maven项目,可以在pom.xml...
String url = "jdbc:sqlserver://localhost:1433;databaseName=myDatabase"; String username = "yourUsername"; String password = "yourPassword"; try { Class.forName(...
综上所述,"Java连接SqlServer 2008"涉及的关键知识点包括Java JDBC API的使用、数据库连接的建立、SQL语句的执行以及结果集的处理。在实际开发中,还需要关注安全性、性能优化和异常处理等多方面问题。提供的压缩包...
#### 二、ADO与SQL Server连接原理 ##### 1. ADO简介 ADO是一种轻量级的数据访问接口,它允许开发者通过简单的API调用来操作各种类型的数据库。ADO支持多种数据库驱动程序,包括ODBC、OLE DB等,这些驱动程序提供了...
总的来说,Java连接SQL Server 2005涉及的知识点包括:JDBC API、数据库连接URL的格式、数据库连接池的使用(如C3P0或HikariCP)、事务管理、异常处理以及优化技巧。了解这些概念和实践将有助于构建健壮且高效的Java...