C# 中这两种种连接 字符串如何理解
连接字符串方法1:SqlConnectionoConn;stringstrConn;oConn=newSqlConnection();strConn="DataSourc...
连接字符串
方法1:
SqlConnection oConn;
string strConn;
oConn = new SqlConnection();
strConn = "Data Source=(localhost);";
strConn += "Initial Catalog=Northwind;";
strConn += "User ID=sa;";
strConn += "Password=;";
oConn.ConnectionString = strConn;
oConn.Open();
MessageBox.Show("Connection Open", "btnconnect_Click()");
oConn.Close();
方法2:
strConn = @"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\NorthWind.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";
在实例应用中 方法1 总是提示 在建立与数据库连接时出错。于是我通过 查看连接NorthWind.mdf 的字符串,把它复制下来,作为 strCoon ,这样成功实现设计的目的。能否重点解释下 "User ID=sa;";和 "Password=;"。这里的 User ID是否是 数据库 下安全用户下的用户及其对应的 Password ??
如果可以 也把字符串中用到的字符 "./" " |" 解释下他们的用处。 展开
方法1:
SqlConnection oConn;
string strConn;
oConn = new SqlConnection();
strConn = "Data Source=(localhost);";
strConn += "Initial Catalog=Northwind;";
strConn += "User ID=sa;";
strConn += "Password=;";
oConn.ConnectionString = strConn;
oConn.Open();
MessageBox.Show("Connection Open", "btnconnect_Click()");
oConn.Close();
方法2:
strConn = @"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\NorthWind.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";
在实例应用中 方法1 总是提示 在建立与数据库连接时出错。于是我通过 查看连接NorthWind.mdf 的字符串,把它复制下来,作为 strCoon ,这样成功实现设计的目的。能否重点解释下 "User ID=sa;";和 "Password=;"。这里的 User ID是否是 数据库 下安全用户下的用户及其对应的 Password ??
如果可以 也把字符串中用到的字符 "./" " |" 解释下他们的用处。 展开
3个回答
展开全部
是的,那个id和password对应的就是数据库安全中的用户名和密码,后面的.\SQLEXPRESS是.\表示本机数据库下的实例名,写成机器名\SQLEXPRESS或者localhost\SQLEXPRESS或者(local)\SQLEXPRESS应该也是可以的
|DataDirectory|\是固定的一个宏,在.net下它一般是指应该程序所在目录下的app_data文件夹,含义如下
connectionString="…… data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|data.mdf;User Instance=true"
这里有一个DataDirectory的宏,他表示什么意义呢?
DataDirectory 是表示数据库路径的替换字符串。由于无需对完整路径进行硬编码,DataDirectory 简化了项目的共享和应用程序的部署。例如,无需使用以下连接字符串:
"Data Source= c:\program files\MyApp\app_data\Mydb.mdf"
通过使用 |DataDirectory|(包含在如下所示的竖线中),即可具有以下连接字符串:
"Data Source = |DataDirectory|\Mydb.mdf"
这里的一篇文章Working with local databases详细的解释了DataDirectory 的意义,不仅仅是Sql server 2005 express中使用,也可以在其他的文件数据库中使用,例如Sqllite数据库文件的连接字符串:
<add name="DefaultDB"
connectionString="DriverClass=NHibernate.Driver.SQLite20Driver;Dialect=NHibernate.Dialect.SQLiteDialect;Data Source=|DataDirectory|\data.db3" />
|DataDirectory|\是固定的一个宏,在.net下它一般是指应该程序所在目录下的app_data文件夹,含义如下
connectionString="…… data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|data.mdf;User Instance=true"
这里有一个DataDirectory的宏,他表示什么意义呢?
DataDirectory 是表示数据库路径的替换字符串。由于无需对完整路径进行硬编码,DataDirectory 简化了项目的共享和应用程序的部署。例如,无需使用以下连接字符串:
"Data Source= c:\program files\MyApp\app_data\Mydb.mdf"
通过使用 |DataDirectory|(包含在如下所示的竖线中),即可具有以下连接字符串:
"Data Source = |DataDirectory|\Mydb.mdf"
这里的一篇文章Working with local databases详细的解释了DataDirectory 的意义,不仅仅是Sql server 2005 express中使用,也可以在其他的文件数据库中使用,例如Sqllite数据库文件的连接字符串:
<add name="DefaultDB"
connectionString="DriverClass=NHibernate.Driver.SQLite20Driver;Dialect=NHibernate.Dialect.SQLiteDialect;Data Source=|DataDirectory|\data.db3" />
展开全部
第一种是用 sqlserver验证,第二种是windows集成验证,我觉得你第一种不成功的原因主要SQLEXPRESS不支持远程连接,可能你的sa密码也不对
追问
没来得急看下面的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
uid和pwd是SQL的用户和密码,Source=.\SQLEXPRESS指的是本地数据库,但版本是express版本的。方法二用的是用windows验证,最好用Sql server验证的模式,这样就要提供uid 和 pwd了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询