C#如何连接SQLSERVER数据库?window身份验证跟sql server身份验证的不同是什

已举报 回答
C#如何连接SQLSERVER数据库?window身份验证跟sql server身份验证的不同是什
问在线客服
扫码问在线客服
  • 回答数

    8

  • 浏览数

    6,801

8个回答 默认排序
  • 默认排序
  • 按时间排序

已采纳
采用集成的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身上转移到了系统管理员身上,这在确定的环境中也是一个问题。
取消 评论
window身份验证:只要你登录进了系统,则默认以电脑当前的用户名和密码登录数据库
sqlserver:必须要数据库管理员给你分配sqlserver的用户才能登录。
如果是做研发工作根本不需要考虑这些东西,这些是数据库管理员做的事情,研发做的就是操作数据库数据就对了。
取消 评论
链接语句如下:
string connString = @Data Source=.\SQLEXPRESS;Initial Catalog=Book;Integrated Security=True; //引入数据源
SqlConnection connection = new SqlConnection(connString); //连接到引入的数据库
windows验证就是数据库账号密码和操作系统上的一样,sql验证是数据库有自己独立的账号密码;sql验证必win验证更安全。
取消 评论
前面这个Windows身份验证就是说你只要登录到电脑上了,再打开sql的时候就不需要用户名和密码了,直接以你电脑系统帐号登录。后面的sqlserver验证就是说你得有sql账户才能登录。
取消 评论
1.链接数据库
数据库的服务开启
using(SqlConnection conn = new SqlConnection(你的数据库的链接字符串)){ //这样就打开了 conn.Open();}2.window身份验证与sqlserver身份验证的区别。安全级别不同。如果是window身份验证,那么当你登陆sqlserver的时候,你的windows用户,也是sqlserver用户,所以可以直接登录。如果是sqlserver身份验证,那么你登录sqlserver的时候,你是需要输入你的sqlserver用户,才可以登录sqlserver
取消 评论
设置用户名和密码,你要先用windows验证身份登录进去,才能设置(在安全性里),之后再写个连接字符串就能连接了
取消 评论
怎么设置用户名和密码很简单也很复杂,你百度一下只需要几步但是如果你按照他们教不行的话就很烦人了具体的解决办法我没时间细讲,又要区分win7和xp,最后如果还不能解决就怪你人品不好了,不同的电脑品牌也会有不同的问题,这点我也可以保证肯定会出现这种情况。现在说一下java怎么连接到数据库:jdbc:是Sun提供的一套数据库编程接口API,由Java语言编写的类、接口组成。JDBC能干什么
1:与数据库建立连接
2:发送SQL语句,让数据库去执行
3:处理结果
一个简单的类实现:
package com.jack.or;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class test2 {
public static void main(String[] args) throws ClassNotFoundException, SQLException{
//第一步:打开数据库
String username = scott;
String password = tiger;
String url = jdbc:oracle:thin:@localhost:1521:orcl;
//f1 step:装载数据库驱动
Class.forName(oracle.jdbc.driver.OracleDriver);//其实就是在java应用程序中注册这个驱动
//f2 step:获得数据库连接
Connection conn = DriverManager.getConnection(url, username, password);//再用DriverManager来管理就可以调用了,然后
//就可以给我们一个返回值这个返回值就是Connection对象(数据库连接对象)了,对数据库操作都要用到conn这个对象
System.out.println(you did it!);//能正常显示这就已经表明打开数据库了
//第二步:执行数据库
//String sql=insert into student(sid,sname,sclass)values(5,'wbj00','4班');
String sql=delete from student d where d.sclass='4班';
PreparedStatement ps=conn.prepareStatement(sql);//相当于已经将执行代码写入控制台了就差执行了
ps.executeUpdate();
System.out.println(you did it!);
//第三步:关闭数据库
conn.close();
conn=null;

}

}
我连接的是oracle,sql 2005类似
取消 评论
Windows身份验证使用的是Windows操作系统的帐户进行验证,你登录Windows的帐户如果已经被映射为SQL登录账户了,就可以直接进入无需再次登录。
SQL Server验证使用的是SQL Server定义的帐户,进入时需要输入用户名密码进行登录验证。
但是如果你要是工作开发程序就需要用SQL Server身份验证了,这样虽然登录时麻烦一些不过安全性相对应得也提高了。
取消 评论
ZOL问答 > 相机 > 其他分类 > C#如何连接SQLSERVER数据库?window身份验证跟sql server身份验证的不同是什

举报

感谢您为社区的和谐贡献力量请选择举报类型

举报成功

经过核实后将会做出处理
感谢您为社区和谐做出贡献

扫码参与新品0元试用
晒单、顶楼豪礼等你拿

扫一扫,关注我们
提示

确定要取消此次报名,退出该活动?