1.前提条件

需要:

1>本机上装有SQL Sever数据库(2005、2008或者更高版本)

2>eclipse或者myeclipse开发环境

3>jar文件(名为sql_jdbc.jar或者sql_jdbc4.jar),jar文件内有JDBC相关类文件

4>dll文件(名为sqljdbc_auth.dll),dll动态链接库文件内有与windows系统相关的内容

---需要的dll文件和jar文件在底部下载链接中给出,至此前期准备工作完毕,可以开始DBA项目的开发了

2.编码

例程序源代码如下:

import java.sql.*;

public class testDB {

/**
* @param args
*/
public static void main(String[] args) {
String JDriver= "com.microsoft.sqlserver.jdbc.SQLServerDriver";//SQL数据库驱动 String connectDB= "jdbc:sqlserver://localhost;integratedSecurity=true;DatabaseName=myDB"; //数据源注意IP地址和端口号,此处使用默认端口1433,可以省略 //把myDB换为本机上已存在的数据库名即可 try
{
Class.forName(JDriver);//加载数据库驱动,返回给定字符串名的类
}catch(ClassNotFoundException e)
{
//e.printStackTrace();
System.out.println("加载数据库驱动失败");
System.exit(0);
}
System.out.println("数据库驱动加载成功");
try
{
String user="sa";//你自己创建的用户名字和密码
String password="mima"; //sa用户为SQL Sever里默认的用户,其密码为Administrator的密码
Connection con=
DriverManager.getConnection(connectDB,user,password);//连接数据库对象
System.out.println("连接数据库成功");
Statement stmt=con.createStatement();//创建SQL命令对象
//查
System.out.println("查询");
System.out.println("开始读取数据"); //返回SQL语句查询结果集(集合)
ResultSet rs=stmt.executeQuery("SELECT * FROM tb"); //循环输出每一条记录
while(rs.next())
{
System.out.println(rs.getString("ID")+"\t"+rs.getString("Name"));
//输出字段的值,getString()方法的参数为字段名(即表的列名) }
System.out.println("读取完毕");
//关闭连接
stmt.close();//关闭命令对象连接
con.close();//关闭数据库连接
}
catch(SQLException e)
{
e.printStackTrace();
//System.out.println("数据库连接错误");
System.exit(0);
}
}
}

3.为项目添加jar文件和dll文件

1>在eclipse或者myeclipse左边的项目栏里找到当前项目(本例中项目名为testDB),右键单击项目名,选择Build Path-->Configure Build Path-->Add External Library,找到jar文件,OK

2>打开 我的电脑 找到dll文件(需要使用对应版本的dll,32位/64位)直接拖动dll文件到项目名称(不是src而是项目名!)

4.运行项目,测试无误

5.可能遇到的异常

1>com.microsoft.sqlserver.jdbc.SQLServerException: The TCP/IP connection to the host localhost, port 1433 has failed. Error: Connection refused: connect.

异常分析:出现此异常是因为SQL Sever相关服务没有开启

解决方法:开始-->所有程序-->Microsoft SQL Sever-->配置工具-->SQL Sever配置管理器

右键单击SQL Sever(SQLEXPRESS)-->启动

右键单击SQL Sever(MSSQLSEVER)-->启动

2>WARNING: Failed to load the sqljdbc_auth.dll
com.microsoft.sqlserver.jdbc.SQLServerException: 没有为集成身份验证配置驱动程序。

问题分析:为了数据库安全使用集成方式连接数据库(连接字符串中的integratedSecurity=true;部分),缺少dll文件

解决方案:参见第3步《为项目添加jar文件和dll文件》,按照提到的方法添加dll文件

特别说明:网上有些sqljdbc_auth.dll文件是不能用的,若dll文件有问题,即便配置完全正确也会出现此错误!

3>加载数据库驱动失败

问题分析:缺少jar文件

解决方案:同上

6.特别说明:

上面演示的是混合模式的身份验证(需要用户名以及对应密码)

若只用单纯的Windows身份验证来登录数据库,只需要删掉DriverManager.getConnection(connectDB,user,password);方法的后两个参数即可

本机测试无误

最新文章

  1. TaintDroid剖析之IPC级污点传播
  2. 窥探Swift之新添数据类型元组与可选值
  3. [比较老的文章]三维渲染引擎 OGRE 与 OSG 的比较综述
  4. python高效解析日志入库
  5. Step by step configuration of Outgoing Emails from SharePoint to Microsoft Online
  6. leach和leach-c协议仿真
  7. C# TcpClient 连接状态检测
  8. 用bootstrap的tab插件做一个图层切换效果(感觉会误导淫们,大家当乐子看吧)
  9. aop(execution()表达式)
  10. 3D数学基础(三)矩阵
  11. 关于MySQL数据库——增删改查语句集锦
  12. Jupyter Notebook 介绍 安装和使用技巧
  13. mac下安装cnpm淘宝镜像
  14. elasticsearch 忽略大小写模糊搜索实现(转)
  15. Yocto学习笔记
  16. CCCC L2-017. 人以群分 贪心
  17. JSON.parse()和jQuery.parseJSON()的区别
  18. Hbase配置指南
  19. Linux轻量级自动运维工具-Ansible浅析【转】
  20. POJ 2566 Bound Found(尺取法,前缀和)

热门文章

  1. Extjs Vbox布局方式,以及align种类,flex,pack属性含义简介
  2. [udemy]WebDevelopment_HTML5
  3. Golang之redis
  4. ssh的无密码登录
  5. linux信号处理总结
  6. 767A Snacktower
  7. 写点C++ 学习记录 充数
  8. Spring boot 默认静态资源路径与手动配置访问路径的方法
  9. 2018.07.27 bzoj3064: Tyvj 1518 CPU监控(线段树)
  10. spring boot web项目在IDEA下热部署解决办法(四步搞定)