logo资料库

C#远程连接SQLserver 数据库.docx

第1页 / 共3页
第2页 / 共3页
第3页 / 共3页
资料共3页,全文预览结束
C#使用ADO.NET技术连接数据库
C#使用 ADO.NET 技术连接数据库 首先,因为作者能力有限,在这里仅演示 C# 连接数据库的过程,原理几乎谈不到,另 外如果有疏漏之处,欢迎各位大虾们批评纠正。 正式演示之前,先澄清几个问题。 1.C#和 ADO.NET 技术是什么关系? 答:C#和 ADO.NET 没有必然联系,C#连接数据库需要用到 ADO.NET 技术。这是很多新 手包括我都容易搞混的地方,C#和 ADO.NET 是什么关系?为什么讲解 C#连接数据库的资料 里面普遍都讲的用 ADO.NET 技术连接数据库?这里读者仅需记住:用 C#开发软件需要连接 数据库时,尽管使用 ADO.NET 技术好了,不用考虑它们啥关系。 2.演示环境。 答:操作系统——win7;编程软件——Microsoft Visual Studio 2010;数据库软件—— Microsoft SQL Server 2008。 注:以下所有陈述都是基于 SQL Server 而言的。 连接数据库,首先需要有数据库。数据库,直观地讲,由两个数据库文件组成,一个后 缀名为.mdf 的文件,这个是主文件,另外一个是后缀名为.ldf 的文件,这个是日志文件。(SQL Server 中是这样的,不同数据库软件的数据库文件后缀名是不同的,比如 ACCESS 数据库文 件的后缀名为 accdb。) 首先,我们用 SQL Server 建立数据库,命名为 MDB, 然后就可以关掉 SSMS 了,关闭 SSMS 之前千万别分离 MDB。 然后启动 VS2010,新建一个 Windows 窗体项目,记住加上 Using System.Data.SqlClient;
上面有 textBox1(用于输入数据库名)、lable1(用于显示连接状态)和 button1(按下 按钮会连接数据库)三个控件。我们要实现的效果就是:运行程序后,在文本框 textBox1 中填写数据库名称,然后按下 button1,如果连接成功,则 lable1 变成“连接成功并已打开”, 如果连接失败,则 lable1 变成“连接失败”。 下面是代码: private void button1_Click(object sender, EventArgs e) { //如果输入的数据库名称为空,则提示请输入数据库名称 if (textBox1.Text == "") { } label1.Text = "请输入数据库名称!"; else { try { ";Integrated Security=SSPI;";//连接字符串 string ConStr = "server=.;database=" + textBox1.Text.Trim() + SqlConnection conn = new SqlConnection(ConStr); conn.Open();//打开连接 if (conn.State == ConnectionState.Open) label1.Text = "连接成功并已打开!"; conn.Close();//关闭连接 { } } catch { label1.Text = "连接失败";
} } } 然后运行程序,在文本框填写“MDB”,并按下 button1, 代码并不难,相信这个结果大家都懂。 下面针对两个问题陈述下。 第一就是红字标识部分,我们最初接触数据库,以为只要将数据库文件 MDB.mdf 放在 windows 窗体项目的 debug 文件夹下就可以了,就是跟项目生成的可执行程序放在同一文件 夹下就可以了,然后运行可执行文件,点击按钮就能连接到那个文件。然而实则不然,必须 将 MDB.mdf 附加到 SSMS 服务器上才行,其实 MDB.mdf 的路径倒是次要的,所以在建立好 数据库后关闭 SSMS 时我强调不要分离 MDB,分离之后怎么都连不上了的。 第二部分就是连接字符串。根据身份验证方式分为两种: (1) windows 身份验证,代码如下: constr=”Initial Data Source=localhost; Integrated Catalog=MDB; Server=localhost;”; constr=”Integrated Security=SSPI; DataBase=MDB; string 或者 String Security=SSPI;”; 连接字符串中的“Database”关键字指定使用的数据库名;“Server”是指提供 SQL Server 的服务器和实例名。如果使用默认的 SQL Server 实例,也可只指定服 务器名;如果安装 SQL Server 的服务器是本机。可写为“localhost”或“.”,否 则可以用 IP 地址或域名指定服务器。 (2) Sql Server 身份验证模式,代码如下: String constr=”server=localhost;uid=sa;pwd=123456;database=MDB.mdf”; 这个就不多解释了,都能看懂。
分享到:
收藏