C#如何连接SQLSERVER数据库?window身份验证跟sql server身份验证的区别是什
采用集成的Windows验证和使用Sql Server身份验证进行数据库的登录
1、集成的Windows身份验证语法范例
string constr = "server=.;database=myschool;integrated security=SSPI";
说明:程序代码中,设置了一个针对Sql Server数据库的连接字符串。其中server表示运行Sql Server的计算机名,由于程序和数据库系统是位于同一台计算机的,所以我们可以用.(或localhost)取代当前的计算机名。
database表示所使用的数据库名(myschool)。由于我们希望采用集成的Windows验证方式,所以设置 integrated security为SSPI即可。
2、Sql Server 2005中的Windows身份验证模式如下:
string constr = "server=.;database=myschool;uid=sa;pwd=sa";
说明:程序代码中,采用了使用已知的用户名和密码验证进行数据库的登录。数据库连接字符串是不区分大小写的。uid为指定的数据库用户名,pwd为指定的用户口令。
为了安全起见,一般不要在代码中包括用户名和口令,你可以采用前面的集成的Windows验证方式或者对Web.Config文件中的连接字符串加密的方式提高程序的安全性。
window身份验证跟sql server身份验证的区别
windows身份验证:
只要能登录操作系统的用户都可以登录数据库。windows身份验证由windows验证并分配有效的安全ID,同时也只能windows用户登录连接。
sqlserver身份验证:
需要在数据库中设置用户和密码,才能登录可以登录的数据库。必须提供SQL Server用户ID和密码
优缺点:
Windows身份验证使用单一的用户信息库源,因此,不需要为数据库访问去分别配置用户。
连接字符串不包含用户ID和密码,因此消除了把用户ID和密码暴露给未授权的用户的危险。可以在Active Directory中管理用户和他们的角色,而不必在SQLServer中显式地配置他们的属性。
Windows身份验证的缺点是,它要求客户通过Windows的安全子系统支持的安全通道去连接SQL Server。如果应用种序需要通过不安全的网络(例如Internet)连接SQL Server,Windows身份验证将不工作。
此外,这种身份验证方法也部分地把管理数据库访问控制的责任从DBA身上转移到了系统管理员身上,这在确定的环境中也是一个问题。
1.链接数据库
数据库的服务开启
using(SqlConnection conn = new SqlConnection("你的数据库的链接字符串"))
{
//这样就打开了
conn.Open();
}
2.window身份验证与sqlserver身份验证的区别。安全级别不同。
如果是window身份验证,那么当你登陆sqlserver的时候,你的windows用户,也是sqlserver用户,所以可以直接登录。
如果是sqlserver身份验证,那么你登录sqlserver的时候,你是需要输入你的sqlserver用户,才可以登录sqlserver
链接字符串有没有区别啊
有的
window身份验证字符串不需要带sqlserver的用户名与密码
Server=sqlserver服务地址;Database=数据库;Trusted_Connection=Yes;Connect Timeout=90
sqlserver身份验证字符串需要带sqlserver的用户名与密码
Server=sqlserver服务地址;uid=用户名;pwd=用户名密码;database=数据库
链接语句如下:
string connString = @"Data Source=.\SQLEXPRESS;Initial Catalog=Book;Integrated Security=True"; //引入数据源
SqlConnection connection = new SqlConnection(connString); //连接到引入的数据库
windows验证就是数据库账号密码和操作系统上的一样,sql验证是数据库有自己独立的账号密码;sql验证必win验证更安全。
链接数据库
数据库的服务开启
using(SqlConnection conn = new SqlConnection("你的数据库的链接字符串"))
{
//这样就打开了
conn.Open();window身份验证与sqlserver身份验证的区别。安全级别不同。
如果是window身份验证,那么当你登陆sqlserver的时候,你的windows用户,也是sqlserver用户,所以可以直接登录。
如果是sqlserver身份验证,那么你登录sqlserver的时候,你是需要输入你的sqlserver用户,才可以登录sqlserver。