第一次连接SQL2005数据库,很简单的

朝三慕四 2011-04-08 04:47:16

class Program
{
static void Main(string[] args)
{
string strCon = "Data Source=PC-201011141515\\SQLEXPRESS;User ID=sa;password=5447763;database=MYFIRSTDB";
SqlConnection cmd;
cmd = new SqlConnection(strCon);
try
{
cmd.Open();
Console.WriteLine("成功");
cmd.Close();
}
catch(Exception e)
{
string strerror=e.ToString();
Console.WriteLine(e.ToString());
using(StreamWriter sw=new StreamWriter(@"G:\C#\exception.txt"))
{
sw.Write(e.ToString());
sw.Close();
}

}
Console.ReadKey();
}
}





System.Data.SqlClient.SqlException: 无法打开登录所请求的数据库 "MYFIRSTDB"。登录失败。
用户 'sa' 登录失败。
在 System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
在 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
在 System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
在 System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK)
在 System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance)
在 System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, Object providerInfo, String newPassword, SqlConnection owningObject, Boolean redirectedUserInstance)
在 System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection)
在 System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options)
在 System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject)
在 System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject)
在 System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)
在 System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
在 System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
在 System.Data.SqlClient.SqlConnection.Open()
在 ConsoleApplication1sql.Program.Main(String[] args) 位置 d:\我的文档\Visual Studio 2005\Projects\ConsoleApplication1sql\ConsoleApplication1sql\Program.cs:行号 19

...全文
422 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq514418353 2011-04-09
  • 打赏
  • 举报
回复
不推荐绝对路径
朝三慕四 2011-04-09
  • 打赏
  • 举报
回复
[Quote=引用 18 楼 awayy1432 的回复:]
C:\\PROGRAM FILES\\MICROSOFT SQL SERVER\\MSSQL.1\\MSSQL\\DATA\\MYFIRSTDB.MDF?
不是吧 绝对路径?
[/Quote]
只有这样写才行.....
脾气不坏 2011-04-09
  • 打赏
  • 举报
回复
C:\\PROGRAM FILES\\MICROSOFT SQL SERVER\\MSSQL.1\\MSSQL\\DATA\\MYFIRSTDB.MDF?
不是吧 绝对路径?
朝三慕四 2011-04-09
  • 打赏
  • 举报
回复
[Quote=引用 21 楼 kingdom_0 的回复:]
楼主可以将数据库文件放到你的项目文件当中,引用的时候,用相对路径
给你一个SQL数据库连接的网站:
http://www.connectionstrings.com
[/Quote]
嗯...
wpf2009 2011-04-09
  • 打赏
  • 举报
回复
1.确定你的SQL server是否启动
2.确定你的用户名和密码是否正确
3.该用户是否有权限
4.连接字符串是否正确
kingdom_0 2011-04-09
  • 打赏
  • 举报
回复
楼主可以将数据库文件放到你的项目文件当中,引用的时候,用相对路径
给你一个SQL数据库连接的网站:
http://www.connectionstrings.com
朝三慕四 2011-04-08
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 lianaiqiong 的回复:]
C# code

这是用VS2005向导生成的
string connet = "Data Source=PC-201011141515\\SQLEXPRESS;Initial Catalog=C:\\PROGRAM FILES\\MICROSOFT SQL SERVER\\MSSQL.1\\MSSQL\\DATA\\MYFIRSTDB.MDF;Persist Security Info=T……
[/Quote]
这样成功了....
lixianrong890611 2011-04-08
  • 打赏
  • 举报
回复
理论是可以的!你的配置是不是出了问题!
朝三慕四 2011-04-08
  • 打赏
  • 举报
回复

这样为什么不行
string strCon = "Server=PC-201011141515\\SQLEXPRESS;User ID=sa;password=5447763;database=MYFIRSTDB";

string strCon = "Server=.;User ID=sa;password=5447763;database=MYFIRSTDB";
string strCon = "Server=127.0.0.1;User ID=sa;password=5447763;database=MYFIRSTDB";


朝三慕四 2011-04-08
  • 打赏
  • 举报
回复

这是用VS2005向导生成的
string connet = "Data Source=PC-201011141515\\SQLEXPRESS;Initial Catalog=C:\\PROGRAM FILES\\MICROSOFT SQL SERVER\\MSSQL.1\\MSSQL\\DATA\\MYFIRSTDB.MDF;Persist Security Info=True;User ID=sa;Password=5447763";

测试成功....
朝三慕四 2011-04-08
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 viki117 的回复:]
告诉你一个比较笨的方法,vs有一个"服务器资源管理",没有的在视图里面把他选出来,里面有数据连接,然后新建,然后按引导,一步一步完成,如果连上了,把哪个连接字符串拷贝下来,放到不程序里面就可以了,要是不行,就说明你的连接参数有问题,或者权限是问题了..
[/Quote]

成功....为什么其它方法不行
比如::

string strCon = "Server=PC-201011141515\\SQLEXPRESS;User ID=sa;password=5447763;database=MYFIRSTDB";

--数据库配置在本地的话,也可:
string strCon = "Server=.;User ID=sa;password=5447763;database=MYFIRSTDB";
string strCon = "Server=127.0.0.1;User ID=sa;password=5447763;database=MYFIRSTDB";


genius_tong 2011-04-08
  • 打赏
  • 举报
回复
一般都是SQL Server那边的问题。再就是确保连接字符串的用户名密码数据库名没有写错
JKing 2011-04-08
  • 打赏
  • 举报
回复
重启下SQL server
Server==.\SQLEXPRESS;database=Test;User ID=sa;Password=5447763
朝三慕四 2011-04-08
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 bdmh 的回复:]
这是权限问题,用户名,密码,等无法正常登陆sqlserver
[/Quote]
我用SQL Server Management Studio Express用SQL server方式登陆是可以登陆的....
那怎么修改权限咧??
Daqing 2011-04-08
  • 打赏
  • 举报
回复
windows
Data Source=.\SQLEXPRESS;Initial Catalog=MYFIRSTDB;Trusted_Connection=true


sql
Server==.\SQLEXPRESS;database=Test;User ID=sa;Password=5447763


试一下,估计是没启用sa用户或者信息不对。
viki117 2011-04-08
  • 打赏
  • 举报
回复
告诉你一个比较笨的方法,vs有一个"服务器资源管理",没有的在视图里面把他选出来,里面有数据连接,然后新建,然后按引导,一步一步完成,如果连上了,把哪个连接字符串拷贝下来,放到不程序里面就可以了,要是不行,就说明你的连接参数有问题,或者权限是问题了..
TNight 2011-04-08
  • 打赏
  • 举报
回复
额,失误。Trusted_Connection=true;
放在引号里面
TNight 2011-04-08
  • 打赏
  • 举报
回复

string strCon = "Data Source=PC-201011141515\\SQLEXPRESS; database=MYFIRSTDB";Trusted_Connection=true;

Joop_Song 2011-04-08
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 bdmh 的回复:]
这是权限问题,用户名,密码,等无法正常登陆sqlserver
[/Quote]

这个貌似不是技术问题,你先确定一下你的用户名和密码是否能登陆数据库。。。
TNight 2011-04-08
  • 打赏
  • 举报
回复
你用windows登陆试试
加载更多回复(2)

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧