Eclipse Java Neon 通过JDBC连接SQL Server2008

JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。

1.配置SQL Server:开始 > Microsoft SQL Server2008 > SQL Server 配置管理器 > SQL Server 网络配置 > SQLEXPRESS 的协议 > TCP/IP

TCP/IP配置:修改IP是“127.0.0.1”的一项和IPAll的一项,修改完成后确定开启TCP/IP

    

2.在SQL Server2中创建数据库MyHotel,建立相关表

3.Eclipse中代码如下:

 1 import java.sql.*;
 2
 3 class GetCon {
 4     Connection con;
 5     //得到连接好数据库MyHotel的Connection
 6     public Connection getCon() {
 7         try {
 8             Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
 9         }catch (ClassNotFoundException e) {
10             System.out.println(e);
11         }
12         try {
13             String url = "jdbc:sqlserver://127.0.0.1:1433;DateBaseName= MyHotel ";
14             String saName = "sa";
15             String saPw = "123";
16             con = DriverManager.getConnection(url,saName,saPw);
17         } catch (SQLException e) {
18             System.out.println(e);
19         }
20         return con;
21     }
22 }
23
24 public class Test1 {
25     public static void main(String[] args) {
26         GetCon gc = new GetCon();
27         Connection con;
28         Statement sql;
29         ResultSet rs;
30         try {
31             con = gc.getCon();
32             sql = con.createStatement();
33             //查询数据库MyHotel中Hotel表中迪拜帆船酒店单人间的价格
34             rs = sql.executeQuery("select Price from Hotel "
35                     + "where Hname = ‘迪拜帆船酒店‘ and Rmtype = ‘单人间‘");
36             if (rs.next()) {
37                 System.out.println(rs.getString("Price"));
38             }
39         } catch (SQLException e) {
40             e.printStackTrace();
41         }
42     }
43 }

#错误总结#

1.未引入sqljdbc4.0报错:

java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver
java.sql.SQLException: No suitable driver found for jdbc:sqlserver://127.0.0.1:1433;DateBaseName= MyHotel
Exception in thread "main" java.lang.NullPointerException
at Test1.main(Test1.java:32)

解决方法:TestHotel(创建的java项目)> Properties > Java Build Path > Add External JARs... > 选择下载好的sqljdbc4.jar > OK

2.未设置默认数据库

com.microsoft.sqlserver.jdbc.SQLServerException: 对象名 ‘Hotel‘ 无效。
    at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:216)
    at com.microsoft.sqlserver.jdbc.SQLServerStatement.getNextResult(SQLServerStatement.java:1515)
    at com.microsoft.sqlserver.jdbc.SQLServerStatement.doExecuteStatement(SQLServerStatement.java:792)
    at com.microsoft.sqlserver.jdbc.SQLServerStatement$StmtExecCmd.doExecute(SQLServerStatement.java:689)
    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.SQLServerStatement.executeCommand(SQLServerStatement.java:180)
    at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeStatement(SQLServerStatement.java:155)
    at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeQuery(SQLServerStatement.java:616)
    at Test1.main(Test1.java:34)

解决方法1:在所用表Hotel前加MyHotel..(注意是两个点!!)即“ 数据库+ .. +表名 ”

解决方法2:修改默认数据库,在SQL Server中选择连接时使用的登录名(我的是sa) sa > 属性 > 常规 > 默认数据库 > 选择需要的数据库(我的是MyHotel)

时间: 2024-10-10 10:20:34

Eclipse Java Neon 通过JDBC连接SQL Server2008的相关文章

jdk1.7 JDBC连接SQL Server2008

路由器网:http://www.ming4.com/news/2355.html Jackie的博客:http://blog.163.com/jackie_howe/blog/static/19949134720125173539380/ part 1 : SQLServer 2008的配置 0. 在连接数据库之前必须保证SQL Server 2008是采用SQL Server身份验证方式而不是windows身份验证方式. 1. 安装好SQL Server 2008后,运行 开始 → 所有程序 

JDBC连接SQL Server2008

在使用JDBC连接数据库之前首先要加载相应数据库的JDBC驱动类,可以通过通用方法Class.forName来加载驱动类.   方式一:使用JDBC-ODBC连接桥 一般安装JDK后会自带JDBC-ODBC桥驱动程序,一般在-\lib\rt.jar中,但也有例外,我就碰到没有自带的情况,这时自行下载了一个带有JDBC-ODBC桥驱动的rt.jar. 创建ODBC数据源student Connection con=null; try {      Class.forName("sun.jdbc.o

java 连接sql server2008配置

Java 应用程序连接SQL Server2008 (Eclipse+JDK7.0+jdbc4.0.jar+Sql Server2008) 假设应用端的连接语句为: String url = "jdbc:sqlserver://localhost:2955;DatabaseName=FDBA"; String user="fooxer" String password="xiao25QIU" Connection con=DriverManage

Java JDBC连接SQL Server2005错误:通过端口 1433 连接到主机 localhost 的 TCP/IP 连接失败 及sql2008外围服务器

转载:Java JDBC连接SQL Server2005错误:通过端口 1433 连接到主机 localhost 的 TCP/IP 连接失败 错误原因如下: Exception in thread "main" org.hibernate.exception.JDBCConnectionException: Cannot open connection at org.hibernate.exception.SQLStateConverter.convert(SQLStateConver

Java通过jdbc连接sql server2012详细过程

在连接数据库之前必须保证SQL Server 2012是采用SQL Server身份验证方式而不是windows身份验证方式.如果在安装时选用了后者,则重新设置如下: 设置SQL Server 2012的身份验证方式: 1.在连接的服务器上右击,选择属性 2.点击左侧上的安全性,在栏目中选择SQL Server和Windows身份验证 3.设置sa的密码和sa登录名 在根目录下,点击安全性->登录名->选择sa登录名右击选择属性 点击左侧上的常规,在右侧设置登录名sa和密码 4.设置完账号密码

java连接sql server2008的两种方法

最近学到java连接数据库(sql server),发现常用的我们有两种方法,那么这里我总结一下这两种方法怎么使用,还有它们的区别,还有我们一般要使用哪一种方法. 方法一:使用jdbc-odbc桥连接sql server,作为中间媒介连接数据库; 注意我们每次在连接数据库前都必须要引入sql包:import java.sql.*;接下来的步骤都是习惯性步骤,我这里就按照每一步的使用进行列举: 1.配置数据源:打开控制面版->管理工具->数据源(ODBC)->(一般而言我们使用用户DSN)

【转】Java JDBC连接SQL Server2005错误:通过端口 1433 连接到主机 localhost 的 TCP/IP 连接失败

错误原因如下: Exception in thread "main" org.hibernate.exception.JDBCConnectionException: Cannot open connection at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:99) at org.hibernate.exception.JDBCExceptionHelper.convert(JDB

java jdbc 连接 SQL server

关于java jdbc 连接 SQL server 和 连接 mysql 数据库是一样的,为了方便以后查看,笔者在这里给出demo. package com; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.SQLException; import java.sql.Statement; public class DB { p

Java使用JDBC连接SQL Server数据库|实现学生信息系统

Java实验四 JDBC 使用SQL Server数据库或者MySQL数据库各自的客户端工具,完成如下任务: (1)创建数据库students: (2)在数据students中创建表scores,包括如下字段:学号.姓名.性别.得分,字段类型自行定义.学号为主键. 接着使用JDBC编写Java程序,完成如下任务: (1)在表格scores插入5条记录,代表5个学生,三位男生二位女生,各字段内容自定("得分"字段填入自定分数): (2)显示5位学生的所有信息: (3)将三位男生的得分减去