可怜的我啊,搞了一个下午,连接 C#连接Sql server2005,就是连接不上,
然后查资料啊查资料,不仅抱怨国内的文章千篇一律,都没讲清楚到底怎样去写
怎样去配置,你转载我,我转载你。当然,我也喜欢转载。。。。,哈哈哈哈
遇到的问题,就是连接不上Sql server2005, 提出的错误是:
在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服
务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: 命
名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)
于是,找啊,找啊,找啊,找啊,找到的就是这篇文章的上面那一个文章。
其实连接的代码都差不多对了,但是没有人点出来,还有端口的问题。
默认安装的Sql server2005是端口不是1433,我们要的是1433.
1.打开Sql server 管理配置器
2.点击SqlExpress的协议,我们要启动所有状态。
3.选择TCP/IP,点击右键,选择属性,我们修改连接数据库的端口地址,非常重要
4.修改三处,第一你查看下跳出来的对话框,里面有好多TCP/IP的端口。我们要找的是三处。
5.IP地址 是自己电脑的地址 在TCP端口添加1433,然后选择启动
6. IP地址是127.0.0.1的是默认的,也要改掉,如上
8.IPALL是否是表示所有端口??反正也要修改下端口地址了。
9.重新启动服务,不支持热修改,修改重新启动服务。
好了,这就是修改好了端口了。
下面贴代码
这个代码是可以运行的,所以您无需担心,你写的代码是有问题的,你要修改的就是习惯你的数据库
- strConnection += "initial catalog=修改成为你自己创建的数据库;Data Source=localhost;";
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Data.SqlClient;
- namespace dbApp
- {
- class Program
- {
- static void Main(string[] args)
- {
- Console.WriteLine("Hello Word1");
- Program.LinkDB();
- Console.WriteLine("Hello Word3");
- Console.ReadLine();
- }
- static void LinkDB()
- {
- Console.WriteLine("Hello Word2");
- string strConnection = "uid=sa; password=sa; ";
- strConnection += "initial catalog=netdb;Data Source=localhost;";
- strConnection += "Connect Timeout=3";
- // string constr = "server=.;database=myschool;integrated security=SSPI";
- //string constr = "server=.;database=myschool;uid=sa;pwd=sa";
- // strConnection = "data source=.;initial catalog=netdb;user id=sa;pwd=sa";
- try
- {
- SqlConnection objConnection = new SqlConnection(strConnection);
- // SqlConnection objConnection = new SqlConnection(strConnection);
- objConnection.Open();
- Console.WriteLine("连接数据库成功");
- objConnection.Close();
- }
- catch (Exception ex)
- {
- Console.WriteLine(ex.Message);
- }
- }
- }
- }
连接成功的效果
--------------------------------------------------------------------------------------------------------------
如果你还是连不上,那么再去查看如下的配置:
这个你在查看下。
然后重新启动下你的电脑,在连接下代码试试看。你首先要保证,你通过sa 可以进入到sql server2005
-----------------------------------------------------