asp.net程序连接数据库,提示用户'sa'登录失败,但是sql server management studio 中可以正常登录

源错误:行35:stringconnection=ConfigurationManager.AppSettings["ConnString"];行36:SqlConnec... 源错误:
行 35: string connection = ConfigurationManager.AppSettings["ConnString"];

行 36: SqlConnection con = new SqlConnection(connection);
行 37: con.Open();
源文件: c:\Users\weixin\Desktop\OnlineSurvey\VoteIndex.aspx.cs 行: 37

web.config中配置:
<appSettings>
<add key="ConnString" value="Data Source=.\SQLEXPRESS;Initial Catalog=mrSurvey _Data;User ID=sa;Password=123"/>
</appSettings>

DB.cs:
public SqlConnection GetConnection()
{
string myStr = ConfigurationManager.AppSettings["ConnString"].ToString();
SqlConnection myConn = new SqlConnection(myStr);
return myConn;
}

程序:
string connection = ConfigurationManager.AppSettings["ConnString"];
SqlConnection con = new SqlConnection(connection);
con.Open();

int curpage = Convert.ToInt32(this.labPage.Text);
PagedDataSource ps = new PagedDataSource();
string sqlstr = "select * from Title";
SqlDataAdapter myda = new SqlDataAdapter(sqlstr, con);
DataSet ds = new DataSet();
myda.Fill(ds, "Title");
ps.DataSource = ds.Tables["Title"].DefaultView;
展开
 我来答
SQL的艺术
2014-04-10 · SQL写多了就会在追求极致
SQL的艺术
采纳数:2040 获赞数:3322

向TA提问 私信TA
展开全部
mssqlserver和sqlexpress的区别

1.VS自带的数据库可以跟着项目走,每次只要刷新下连接就可以了,使用方便
2.不必每次附加。每次有程序连接数据库,都要在dos上面敲net start mssqlserver->回车;sqlwb->回车(也可以在配置工具里边打开sqlserver).这样感觉很麻烦,又不是大型项目,没必要“锦上添花”,“画蛇添足”。记住,我们现在只是学习,测试。

好东西肯定要继续用咯。用着,用着,我发现了一个问题:
1.连接sqlserver的连接字符串是:
“server=.;database=数据库名;uid=用户名;pwd=密码”
1.连接VS内置的数据库的连接字符串是:
DataSource=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\App.mdf;Integrated Security=True;User Instance=True"
下面我说明下这连接字符串的意思:
DataSource相当于server
DataSource=.\SQLEXPRESS:是本机下的数据库实例SQLEXPRESS
AttachDbFilename=|DataDirectory|\App.mdf附加项目App_Data下的App.mdf
Integrated Security=True;User Instance=True"一个是将整体安全性设置为true,一个是将用户实例设置为true

为什么要这样写?

在回答这个问题之前,首先要回答mssqlserver和sqlserver有什么区别
mssqlserver和sqlserver:
相同点:mssqlserver和sqlserver都是数据库
不同点:
1.mssqlserver和sqlserver是一个数据库下的两个不同实例
2.sqlserver 2005默认为mssqlserver(ms是微软的意思),sqlexpress是你安装sql的时候建立的新实例
补充:默认实例(mssqlserver)连接不要计算机名(.代表本机)\实例名,自定义实例(sqlexpress)连接需要计算机名(.代表本机)\实例名
3.sqlexpress是mssqlserver的简化版,而且是免费的,当然功能上少很多。适合做测试。
Ms SQL SEver就是收费的版本了,比SQL Express强大
OK,解决了这个问题,那上面那个问题就迎刃而解咯
showtime622
推荐于2018-03-23 · TA获得超过122个赞
知道小有建树答主
回答量:148
采纳率:0%
帮助的人:110万
展开全部
首先你要知道在site上不能使用sa的权限,尝试下面的解决方法

在这个db中再建立一个用户,然后在connection string 里使用这个用户再试下
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式