我现在用的是VS2005+SQL Server2000开发WIN程序,可现在边数据库还没有连上,急呀!
代码:
string connString = "Server=localhost;Database=UserDB;User ID=sa;Password=;";
string selectString = "select username,password,usertype from User";
SqlConnection conn = new SqlConnection(connString);
SqlCommand command = new SqlCommand(selectString, conn);
command.Connection.Open();//总是执行到此处出现错误
SqlDataReader dr = command.ExecuteReader();
错误:
在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)
代码:
string connString = "Server=localhost;Database=UserDB;User ID=sa;Password=;";
string selectString = "select username,password,usertype from User";
SqlConnection conn = new SqlConnection(connString);
SqlCommand command = new SqlCommand(selectString, conn);
command.Connection.Open();//总是执行到此处出现错误
SqlDataReader dr = command.ExecuteReader();
错误:
在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)
"Data Source=Aron1;Initial Catalog=pubs;User Id=sa;Password=asdasd;"
- or -
"Server=Aron1;Database=pubs;User ID=sa;Password=asdasd;Trusted_Connection=False"
(both connection strings produces the same result)
Server=.试试
Server=localhost就是连接到本地的服务呀,这个有什么问题呢?
把localhost 换成你SQL SERVER 服务器名字
把localhost换成你的IP地址试试看
郁闷,我就放弃用sqlserver2005 而改用Oracle和sqlserver2000了
有一个能进配置的东西 在vs里 试下看什么毛病
我上次也出现过这样的情况,后来改了就好了
"换成conn.Open();也是一样的!"
"SQL Server的登录验证模式是Windows的还是Sql、Windows混合模式的?"不过一般情况只要是使用过SQL的人都会选择Windows混合模式的.conn.Open();和问题者写的其实都是一样的.没什么区别问题极大的可能是出在以下
string connString = "Server=localhost;Database=UserDB;User ID=sa;Password=;";中的Server=localhost;你的数据库服务器应该是Microsoft SQL(看你所使用的怎么样的SQL),而不是localhost.
Server=(local) 或者你的机器名如果你装的 是 sql server 2005 expressServer=(local)\SQLEXPRESS 或者 机器名\SQLEXPRESS
你把SQL里的权限配置一下
server=(local)\\UserDB;integrated security=sspi;database=表名
SqlConnection conn = new SqlConnection("server=127.0.0.1;uid=sa;pwd=;database=DbName;"
conn.Open();
SqlCommand cmd = new SqlCommand("Select * from table",conn);
SqlDataReader myDR = cmd.ExecuteReader();isValue = myDR.Read();
string constr =sectest.Properties.Settings.Default.st_scoreConnectionString;
con = new SqlConnection(constr);
con.Open();
SqlDataAdapter myadapter;
string cmd = "SELECT * FROM " + comboBox1.Text + "";
myadapter = new SqlDataAdapter(cmd, con);
myadapter.Fill(ds, comboBox1.Text);
dataGridView1.DataSource = ds.Tables[comboBox1.Text];
con.Close();
我做数据库时用的代码,可以参考一下
数据库可以先用界面的方式连接后存在sectest.Properties.Settings.Default.st_scoreConnectionString;中
最好不要用这个表名
实在要用的话加中括号,改成
select [username],[password],usertype from [User]
.\sqlexpress
2.sql是不是“混合验证”,如果不是sql不能登录
复制我的代码砍下!
我给你改了下代码
string connString = "server=.;database=UserDB;uid=sa;pwd=;";
string selectString = "select username,password,usertype from User";
SqlConnection conn = new SqlConnection(connString);
conn.Open();
SqlCommand command = new SqlCommand(selectString, conn);
SqlDataReader dr = command.ExecuteReader();你复制砍下!
localhost改成local吧
还有打开数据库改成 :conn.open();
再有,你的超级管理员邮密码吗?