下载jdbc驱动包

下载地址,我下载的是exe版本的,其实是格自解压包。下载完毕之后,双击运行,会解压在当前目录下。

Microsoft SQL Server JDBC Driver 3.0\sqljdbc_3.0\chs\auth\x64\sqljdbc_auth.dll文件 复制到C:\Windows\SysWOW64目录下。(64bit系统)

Microsoft SQL Server JDBC Driver 3.0\sqljdbc_3.0\chs\auth\x86\sqljdbc_auth.dll 文件 复制到 C:\Windows\System32 (32位系统,未经过验证)

然后将  Microsoft SQL Server JDBC Driver 3.0\sqljdbc_3.0\chs\sqljdbc4/jar 包导入到项目中。

源代码

 1 import java.sql.*;
2 public class Conn{
3 public static void main(String[] args) {
4 String JDriver="com.microsoft.sqlserver.jdbc.SQLServerDriver";
5 //SQL数据库引擎
6 String connectDB="jdbc:sqlserver://ABYSS-PC\\MYABYSS:64160;DatabaseName=master";
7 //数据源 !!!!注意若出现加载或者连接数据库失败一般是这里出现问题
8 // 我将在下面详述
9 try {
10 //加载数据库引擎,返回给定字符串名的类
11 Class.forName(JDriver);
12 }catch(ClassNotFoundException e)
13 {
14 //e.printStackTrace();
15 System.out.println("加载数据库引擎失败");
16 System.exit(0);
17 }
18 System.out.println("数据库驱动成功");
19
20 try {
21 String user="sa";
22 //这里只要注意用户名密码不要写错即可
23 String password="*liluotinghua33*";
24 Connection con=DriverManager.getConnection(connectDB,user,password);
25 //连接数据库对象
26 System.out.println("连接数据库成功");
27 Statement stmt=con.createStatement();
28 //创建SQL命令对象
29
30 //创建表
31 System.out.println("开始创建表");
32 //创建表SQL语句
33 String query= "create table TABLE1(ID
34 NCHAR(2),NAME NCHAR(10))";
35 stmt.executeUpdate(query);//执行SQL命令对象
36 System.out.println("表创建成功");
37
38 //输入数据
39 System.out.println("开始插入数据");
40 String a1="INSERT INTO TABLE1 VALUES('1','旭哥')";
41 //插入数据SQL语句
42 String a2="INSERT INTO TABLE1 VALUES('2','伟哥')";
43 String a3="INSERT INTO TABLE1 VALUES('3','张哥')";
44 stmt.executeUpdate(a1);//执行SQL命令对象
45 stmt.executeUpdate(a2);
46 stmt.executeUpdate(a3);
47 System.out.println("插入数据成功");
48
49 //读取数据
50 System.out.println("开始读取数据");
51 ResultSet rs=stmt.executeQuery("SELECT * FROM
52 TABLE1");//返回SQL语句查询结果集(集合)
53 //循环输出每一条记录
54 while(rs.next()){
55 //输出每个字段
56 System.out.println(rs.getString("ID")+"\t"+rs.getString("NAME"));
57 }
58 System.out.println("读取完毕");
59
60 //关闭连接
61 stmt.close();//关闭命令对象连接
62 con.close();//关闭数据库连接
63 }catch(SQLException e){
64 e.printStackTrace();
65 System.out.print(e.getErrorCode());
66 //System.out.println("数据库连接错误");
67 System.exit(0);
68 }
69 }
70 }

出现的问题

String connectDB="jdbc:sqlserver://ABYSS-PC\\MYABYSS:64160;DatabaseName=master";

先讲解一下这段代码。

其中ABYSS-PC\\MYABYSS 表示服务器名字,两个反斜杠表示转义。什么是服务器的名字呢,如下图:

64160 表示端口号,一般情况下默认的是1433,特殊情况下如我的便是随机分配的。

验证端口号:

1、打开任务管理器,选择服务,查看SQL Server实例的 PID号为7284,我的电脑运行了两个数据库实例,我只连接第一个实例。
2、打开命令提示符。输入 netstat -ano。 7284所对应的端口号是64160.
DatabaseName=master;  master表示数据源。如图。
 
在运行还出现一个问题就是,用windows身份验证可以登录数据库,但是使用SQL Server身份验证却提示失败。
一般出现错误会报告错误代码,我这里报告的错误代码是18456 。你可以用谷歌搜索一下: SQL Server 2008 错误代码 18456.
这里我简单的提供一下解决办法。
首先windows帐号是可以登录的。
查找问题的过程:
第一步: 启动所有与SQL有关的服务,问题依旧;
第二步: 查看windows防火墙,被默认启动了,不启动选择项被Disabled。两个提示“由于安全考虑,某些设置由组策略控制”“Windows防火墙正在使用您的域设置”,先用gpedit.msc打组策略编辑器,机算机配置--管理模板--网络--网络连接--Windows防火墙--标准配置文件,查看右边各选项属性,都是未配置状态,问题不在这里。
第三步:用windows帐号登录,连接成功后,右击实例,选择属性->安全性。确定“服务器身份验证”选择的是“SQL Server和Windows身份验证模式”
通过这三个步骤,问题就差不多解决了。
还以一点,别忘了给sa用户登录权限。
双击sa帐号
选择状态。

JDBC连接SQL Server的更多相关文章

  1. JDBC连接SQL Server代码模板

    *                  JDBC连接SQL Server数据库 代码模板* Connection: 连接数据库并担任传送数据的任务:* Statement :  执行SQL语句:* Re ...

  2. JDBC连接sql server数据库及其它

    JDBC连接sql server数据库的步骤如下: 1.加载JDBC驱动程序: 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), 这通过java.lang.Class类的 ...

  3. JDBC连接SQL server与ADO.NET连接Sql Server对比

    JDBC连接SQL server与ADO.NET连接Sql Server对比 1.JDBC连接SQL server 1)java方面目前有很多驱动能够驱动连接SQL servernet.   主流的有 ...

  4. JDBC连接sql server数据库的详细步骤和代码

    JDBC连接sql server数据库的详细步骤和代码 JDBC连接sql server数据库的步骤如下: 1.加载JDBC驱动程序: 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Ja ...

  5. JDBC连接SQL Server 2005步骤详解

    一.设置SQL Server服务器:    1.“开始” → “程序” → “Microsoft SQL Server 2005” → “配置工具” → “SQL Server Configurati ...

  6. 使用JDBC连接SQL Server

    源文:http://bbs.bc-cn.net/dispbbs.asp?boardid=12&id=140292 整理:秋忆 接触Java或者JSP,难免会使用到数据库SQL Server 2 ...

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

    Java实验四 JDBC 使用SQL Server数据库或者MySQL数据库各自的客户端工具,完成如下任务: (1)创建数据库students: (2)在数据students中创建表scores,包括 ...

  8. Java使用JDBC连接SQL Server数据库

    Java使用JDBC连接SQL Server数据库 1.下载驱动 1.下载Microsoft SQL Server JDBC 驱动程序 https://docs.microsoft.com/zh-cn ...

  9. JDBC连接sql server数据库的详细步骤和代码 转

    JDBC连接sql server数据库的步骤如下: 1.加载JDBC驱动程序(只做一次): 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), 这通过java.lang.C ...

  10. 编写Java程序,使用JDBC连接SQL Server数据库

    返回本章节 返回作业目录 需求说明: 使用JDBC连接SQL Server数据库 SQL Server数据库位于192.168.2.101. 所需连接的数据库为eshop_db,用户名为test,密码 ...

随机推荐

  1. java 通过内存映射文件来提高IO读取文件性能

    MappedByteBuffer out = new RandomAccessFile("src/demo20/test.dat", "rw"). getCha ...

  2. php使用mysql之sql注入(功)

    sql注入就是用户通过构造sql语句,完成sql一系列操作 准备素材如下: 这是test.html <!DOCTYPE html> <html> <meta charse ...

  3. Scrapy爬豆瓣电影Top250并存入MySQL数据库

    d:进入D盘 scrapy startproject douban创建豆瓣项目 cd douban进入项目 scrapy genspider douban_spider movie.douban.co ...

  4. sql脚本创建用户角色权限表

    /******************************************/ /* 名称:权限管理 */ /* 编写日期:2010.5.20 */ /* 开发者:dangqinghua * ...

  5. Python20-Day01

    简述编译型与解释型语言的区别,且分别列出你知道的哪些语言属于编译型,哪些属于解释 编译型语言是一种以编译器来实现的编程语言,优缺点:执行速度快,调试麻烦 编译型语言:Java,Go,C,C++ 解释性 ...

  6. Python3 函数作用域

    一 LEGB 什么是LEGB? L:local 函数内部作用域 E:enclosing 函数内部与内嵌函数之间 G:global 全局作用域 B:build-in 内置作用域 顺序是什么? 跟名字一样 ...

  7. PHPDoc 学习记录

    https://zh.wikipedia.org/wiki/PHPDoc PHPDoc 是一个 PHP 版的 Javadoc.它是一种注释 PHP 代码的正式标准.它支持通过类似 phpDocumen ...

  8. CS小分队第二阶段冲刺站立会议(5月28日)

    昨日成果:昨天对我们的软件的主界面进行了思考,考虑到许多人建议我们团队添加可以自主增加软件快捷键的功能,我对这一想法的可行性和项目总体策划进行评估分析后,决定正式实施:已经完成从电脑上添加文件在我们的 ...

  9. 漫漫征途,java开发(未完待续)

    前言 2018年,大二上,有幸加入服务外包实验室的考核,在考核中,主动加入xxx项目的后端,一是为了积累项目经验,二是为了学到更多东西,进入了之后发现原来要学的这么多,时间这么紧!但唯有学习! 心得体 ...

  10. C语言的知识与能力的自评

    1.我希望将来上班的地方是自己所感兴趣的,正在寻找自己感兴趣的,并且正在普及IT行业的相关知识. 2.我认为学习就是一个自我成长和自我提升以及认识世界的方法,学习的作用是可以不断的提升对这个世界的认识 ...