数据库登录身份验证方式有两种

 

 

其中服务器名称即为安装SQLServer2008的电脑,充当数据库服务器,在笔者这里就是自己的电脑名称。

身份验证方式有两种:windows身份验证和SQLServer身份验证。对于选用windows身份验证,登录时不需要输入密码,登录者是这台电脑的用户;SQLServer身份验证登录需要输入用户名和密码,而sa用户是数据库服务器默认的sqlserver身份登陆者。服务器角色sysadmin是具有最大权限的角色,该角色对任何用户创建的数据库都可以浏览和修改。

  1. //创建windows身份验证登录的用户
  2. create login [DESKTOP-T2FR3H7\Administrator] from windows;

下面讨论如何在eclipse中通过jdbc连接数据库,分别采用windows身份和sqlserver身份。

1 正确导入sqljdbc.jar包到项目工程的build path目录下,此时会看到.jar下面有两个子包com.microsoft.sqlserver.jdbc包和microsoft.sql包,而SQLServerDriver驱动类就在第一个子包下面


2 采用SQLServer身份登录连接数据库服务器代码如下

  1. public
    static
    void method1()
  2.    {
  3.       try {
  4.          Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); //将数据库驱动器类加载到jvm中
  5.       } catch (ClassNotFoundException e) {
  6.          e.printStackTrace();
  7.       }
  8.        String dbURL="jdbc:sqlserver://localhost:1433;DatabaseName=aa";//数据库连接地址
  9.        try {
  10.          Connection conn=DriverManager.getConnection(dbURL,"");//需要输入登录用户名和登录密码
  11.          System.out.println("Connection Successful!");
  12.        } catch (SQLException e) {
  13.          e.printStackTrace();
  14.       }
  15.    }

3 采用windows身份验证登录

需要做额外工作,且dbURL为"jdbc:sqlserver://localhost:1433;integratedSecurity=true;databasename=aa"

//integratedSecurity 身份验证方式,当为true时将使用当前的windows用户账户凭据进行身份验证;当为false时,在连接中指定用户ID和密码

代码如下

  1. public
    static
    void method2()
  2.    {
  3.       try {
  4.          Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
  5.       } catch (ClassNotFoundException e) {
  6.          e.printStackTrace();
  7.       }
  8.        String dbURL="jdbc:sqlserver://localhost:1433;integratedSecurity=true;DatabaseName=aa";
  9.        try {
  10.          Connection conn=DriverManager.getConnection(dbURL);
  11.          System.out.println("Connection Successful!");
  12.        } catch (SQLException e) {
  13.          e.printStackTrace();
  14.       }
  15.    }

出现这种情况报错是因为第一次使用继承身份验证方式,需要做一些额外工作。

1 将sqljdbc_auth.dll文件复制到C:/windows/system32目录下

2为保险起见, 同时也复制到jdk/bin目录下(jre/bin目录下也需要复制一份)

Sqljdbc_auth.dll文件在sqljdbc\chs\auth\x64目录下 x86代表计算机是32位,x64代表计算机是64位,应该根据自己电脑的情况灵活选择。

Eclipse通过jdbc连接sqlserver2008数据库的两种方式的更多相关文章

  1. python连接redis数据库的两种方式

    代码: # __author__ = 'STEVEN' import redis # 方式1,直接连接 # r = redis.Redis(host='192.168.43.22',port=6379 ...

  2. C++连接mysql数据库的两种方法

    本文主要介绍了C++连接mysql数据库的两种方法,希望通过本文,能对你有所帮助,一起来看. 现在正做一个接口,通过不同的连接字符串操作不同的数据库.要用到mysql数据库,以前没用过这个数据库,用a ...

  3. python学习--python 连接SQLServer数据库(两种方法)

    1. python 学习.安装教程参照: http://www.runoob.com/python/python-tutorial.html 2. 集成开发环境 JetBrains PyCharm C ...

  4. .Net 中读写Oracle数据库常用两种方式

    .net中连接Oracle 的两种方式:OracleClient,OleDb转载 2015年04月24日 00:00:24 10820.Net 中读写Oracle数据库常用两种方式:OracleCli ...

  5. plsql 连接oracle数据库的2种方式

      plsql 连接oracle数据库的2种方式 CreationTime--2018年8月10日09点50分 Author:Marydon 方式一:配置tnsnames.ora 该文件在instan ...

  6. Android开发之使用sqlite3工具操作数据库的两种方式

    使用 sqlite3 工具操作数据库的两种方式 请尊重他人的劳动成果,转载请注明出处:Android开发之使用sqlite3工具操作数据库的两种方式 http://blog.csdn.net/feng ...

  7. springmvc和servlet在上传和下载文件(保持文件夹和存储数据库Blob两种方式)

    参与该项目的文件上传和下载.一旦struts2下完成,今天springmvc再来一遍.发现springmvc特别好包,基本上不具备的几行代码即可完成,下面的代码贴: FileUpAndDown.jsp ...

  8. Django框架操作数据库的两种方式

    Django操作数据库的前提操作是成功连接数据库,详情见上篇:https://www.cnblogs.com/kristin/p/10791358.html Django查询数据库的方式一 from ...

  9. Eclipse通过JDBC连接MySQL数据库的步骤(最原始的几个步骤)

    java可以兼容目前市面上所有类型的数据库,主要是因为提供了两个接口,一个用于连接目标数据库,一个用于向数据库中传输SQL命令. Connection接口——连接目标数据库: Statement  接 ...

随机推荐

  1. Kubernetes Pv & Pvc

    Kubernetes PV & pvc 介绍 PersistentVolume(pv)和PersistentVolumeClaim(pvc)是k8s提供的两种API资源,用于抽象存储细节.管理 ...

  2. XMind 入门教程

    选自:http://www.xmindchina.net/ XMind 是一款非常实用的商业思维导图软件,应用全球最先进的Eclipse RCP 软件架构,全力打造易用.高效的可视化思维软件.对于新手 ...

  3. ansible-playbook && Roles && include

    先看一个yml文件示例 --- - hosts: webservers #主机组 vars: ##变量设置 http_port: 80 max_clients: 200 remote_user: ro ...

  4. Mysql忘记数据库密码以及用户授权案例展示

    Mysql忘记数据库密码以及用户授权案例展示 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 大家在学习MySQL时如果很长一段时间不使用密码是不是就忘记MySQL的管理密码啦?这种 ...

  5. git的基本操作---就看我这一篇就足够了!!!!!

    git操作项目的大致步骤. git init //初始化一个本地仓库. git add . //添加文件 git commit -m '提交内容' //提交到本地仓库 git status //查看状 ...

  6. Nginx的alias的用法及与root的区别

    以前只知道Nginx的location块中的root用法,用起来总是感觉满足不了自己的一些想法.然后终于发现了alias这个东西. 先看toot的用法 location /request_path/i ...

  7. HDU - 5419 Victor and Toys(组合计数)

    http://acm.hdu.edu.cn/showproblem.php?pid=5419 题意 n个物品,标号1-n,物品i有权值wi.现在有m个区间[l,r],从中任意选三个区间i,j,k,求物 ...

  8. Git 设置过滤忽略的文件或文件夹(ignore file)

    我们一般向代码仓库提交项目的时候,一般需要忽略编译生成的中间文件以及文件夹的提交,因为它们是无用的,而且也会占用仓库的空间.一般只用提交.pro,.sln,makefile,程序源文件等编译必须用到的 ...

  9. C#使用Font Awesome字体

    这个类是一个开源类,我做了一些功能优化1.如果没有安装Font Awesome字体,可能需要直接去exe路径下使用对应名称字体.2.可以直接返回\uFxxx类型字体,方便winform按钮使用,不然的 ...

  10. C# 摇奖机实例(线程)

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...