*OLEDB方式连接

Sql身份验证模式:Provider="SQLOLEDB;data source=server_name;initial catalog=databasename;uid=username;pwd=password;" 

Windows身份验证模式:ConnectString=”Provider=SQLOLEDB;Data Source=server_name;DataBase=databasename; Integrated Security=SSPI;Persist Security=true”

注释:(此两种方式的却别仅在于windows验证中用Integrated Security=SSPI代替了sql验证中的uid=username;pwd=password语句(即指明用户名、密码语句))

1.Provider=SQLOLEDB:提供者为SQLOLEDB(此为固定)

2.Integrated Security=SSPI:

集成安全机制采用SSPI
    SSPI是Security Support Provider Interface(Microsoft安全支持提供器接口)SSPI是定义得较全面的公用API,用来获得验证、信息完整性、信息隐私等集成安全服务,以  及用于所有分布式应用程序协议的安全方面的服务。

设置Integrated Security为 True 的时候,采用windows身份验证模式。只有设置为 False 或省略该项的时候,采用 UserID, PWD 来连接。Integrated Security 可以设置为: True, false, yes, no ,还可以设置为:sspi ,相当于 True,建议用这个代替 True。

3.Persist Security Info:坚持安全信息

Persist Security Info属性的意思是表示是否保存安全信息,其实可以简单的理解为"ADO在数据库连接成功后是否保存密码信息",True表示保存,False表示不保存.ADO缺省为False(即可有可无).总体来说,如果数据库连接成功后不再需要连接的密码,出于安全性考虑,还是建议将Persist Security Info设为false,以防止后门程序取得数据库连接的密码.

4.initial catalog等同于database(可以互换):指定连接数据库的名字(如果省略则连接的是当前用户名的默认数据库,详情见下文)

5.DATA SOURCE是SQL服务器的名字
在data source里用localhost或(local)或“.”都代表本地服务器. 也可用本机的外网IP地址 例如:data source=192.168.24.71;

*ODBC方式连接

   使用数据源方式

此种方式主要是配置odbc数据源,有三种方式,系统dsn、用户dsn、文件dsn。具体方法这里不作介绍。配置完数据源以后即可连接:

    用系统dsn:  connectstring= "DSN=dsnname;   UID=username;   PWD=password"
  
    用文件dsn:   connectstring = "FILEDSN=filedsnname; UID= username;   PWD=password "  
 
 
  使用ODBC驱动方式:
    使用ODBC 驱动程序, 免去了配置ODBC数据源的步骤, 可以利用ODBC 驱动程序直接与数据库相连接。

ConnectString="Driver={sql server};server=servername;database=databasename;uid=username;pwd=password;"

详细注释(关于windows身份验证和SQL身份验证):

Windows身份验证使用Windows登录用户身份连接数据库,而SQL身份验证要求显式地指定SQL Server用户ID和密码。要想使用Windows身份验证,必须在连接字符串中包括 Integrated Security 属性:
                            Data Source=ServerName;Integrated Security=True;

默认情况下,Integrated Security 属性为 False ,这意味着将禁用Windows身份验证。如果没有显式地把这个属性的值设置为True,连接将使用SQL Server身份验证,因此,必须提供SQL Server用户ID和密码。Integrated Security属性还能识别的其他值只有SSPI(Security Support Provider Interface,安全性支持提供者接口).在所有的Windows NT操作系统上,其中包括Windows NT 4.0、2000、XP,都支持值SSPI。它是使用Windows身份验证时可以使用的惟一接口,相当于把Integrated Security 属性值设置为True。

在Windows身份验证模式中,SQL Server使用Windows的安全子系统对用户连接进行有效性验证。即使显示地指定用户ID和密码,SQL Server也不检查连接字符串中的用户ID和密码。因为只有Windows NT、2000、XP支持SSPI,因此如果正使用的是这些操作系统,则只能使用Windows集成的安全策略去连接SQL Server。不论使用哪一个操作系统,当使用SQL Server身份验证时,必须在连接字符串中指定用户ID和密码:
Data Source=ServerName;User ID=donaldx;Password=unbreakable

默认情况下,SQL Server 每一个用户都可指定一个默认数据库,当在数据库中创建用户时,可以设置用户的默认数据库。此外,也可以在任意时间更改用户的默认数据库。:如下图

设置好默认数据库后在连接时可以不指定database(或initial catalog)的值即可连接默认数据库.

sql server 数据库连接方式分析、详解相关推荐

  1. SQL Server DBA工作内容详解

    原文:SQL Server DBA工作内容详解 在Microsoft SQL Server 2008系统中,数据库管理员(Database Administration,简称为DBA)是最重要的角色. ...

  2. Arcgis连接sql server发布地图服务详解

    Arcgis+sql server发布地图服务详解 1.ArcGIS中创建企业地理数据库 通过ArcGIS创建一个地理数据库至SQLServer数据库中. 1.需要有一个登陆ArcGIS的管理员账号, ...

  3. SQL Server:“数据收缩”详解

    SQL Server:"数据收缩"详解 1. 数据库的相关属性 2. 为何数据库需要收缩? 3. 如何收缩数据库? 1. 数据库的相关属性 在MS中创建数据库时会为数据库分配初始的 ...

  4. SQL Server事务隔离级别详解

    SQL Server事务隔离级别详解 标签: SQL SEERVER/MSSQL SERVER/SQL/事务隔离级别选项/设置数据库事务级别 SQL 事务隔离级别 概述 隔离级别用于决定如果控制并发用 ...

  5. SQL Server 2005 常用数据类型详解

    SQL Server 2005 常用数据类型详解 [b]1. 字符串数据类型[/b] char 此数据类型可存储1~8000个定长字符串,字符串长度在创建时指定:如未指定,默认为char(1).每个字 ...

  6. linux启动sql server数据库,SQL Server数据库启动过程详解及启动不起来的问题分析及解决方法...

    第五步.启动系统数据库model model系统数据库同样也是SQL Server启动过程中用到的一个非常关键的数据库,如果这个库损坏,SQL Server启动也会失败,关于model数据不能启动的原 ...

  7. SQL Server 数据库关键知识点详解(优秀经典)

    原文地址: http://hi.baidu.com/ztf704/blog/item/d9b5512cb0e7c9ef8a1399c6.html 经典的SQL语句(基础篇)      摘要:sql查询 ...

  8. SQL Server数据库字段类型详解

    1.字符串类型 Char char数据类型用来存储指定长度的定长非统一编码型的数据.当定义一列为此类型时,你必须指定列长.当你总能知道要存储的数据的长度时,此数据类型很有用.例如,当你按邮政编码加4个 ...

  9. python数据库编程:Python基于Pymssql模块实现连接SQL Server数据库的方法详解

    本文实例讲述了Python基于Pymssql模块实现连接SQL Server数据库的方法.分享给大家供大家参考,具体如下: 数据库版本:SQL Server 2012. 按照Python版本来选择下载 ...

  10. sql server charindex和patindex详解(转)

    假如你写过很多程序,你可能偶尔会碰到要确定字符或字符窜串否包含在一段文字中,在这篇文章中,我将讨论使用charindex和patindex函数来搜索文字列和字符串.我将告诉你这两个函数是如何运转的,解 ...

最新文章

  1. Appium+python自动化(八)- 初识琵琶女Appium(千呼万唤始出来,犹抱琵琶半遮面)- 下(超详解)...
  2. PHP教程中验证正整数is_int($value+0),为什么要这样?
  3. Transformer结构详解(有图,有细节)
  4. 高通fastboot一键进9008工具_红米K30S至尊纪念版一键解锁bl获取面具root超详细刷机教程...
  5. 如何在同一台计算机上安装多个Java版本
  6. Java 7 – NIO文件革命
  7. mysql并发错误_又谈php+mysql并发数据出错问题
  8. 宁宛 机器人_全文阅读 .007 忠犬机器人
  9. 2010浙大878计算机专业基础综合解析
  10. 阿里巴巴笔试题目(接示本质的解法)
  11. 解决eclipse中git中cannot open git-upload-pack(无法打开Git上传包)问题
  12. 小学计算机应用到英语课教案,人教版小学英语三年级上册unit one hello!文具单词教学信息技术应用成果(教学设计方案).doc...
  13. CWMP(TR069)协议标准学习
  14. 闲置台式机+文件服务器,闲置主机秒变家用NAS,让你的闲置电脑变存储中心
  15. DEDE网站安全设置防挂马教程
  16. PostgreSQL任意字数模糊查询——pg_bigm
  17. win7共享中心服务器运行失败,win7网络共享中心打不开怎么办
  18. 编程将输入的百分制成绩转换为五分制成绩输出
  19. 人工神经网络的发展前景,人工神经网络及其应用
  20. openstack queens版本修改admin密码

热门文章

  1. Java多线程问题之同步器CyclicBarrier
  2. windows sesrver2003下搭建DHCP服务器
  3. SQL server 数据导入导出BCP工具使用详解
  4. Oracle数据库文件中的导入\导出(imp/exp命令)
  5. MyBatis关联映射
  6. C#实现Windows开机自启动
  7. 一夜上手uni-app
  8. Linux文件描述符和输入输出重定向
  9. mysql 只显示箭头_为什么在DOS窗口中使用MySQL时,输入命令后只出现一个箭头,输入什么内容都是这样?...
  10. go mysql driver事务,Go 数据库事务的源码分析