C#从SQLServer连接字符串获取SQLServer服务器信息
在网上找到的一个方法
但觉得该方法有点问题,
1)str.Contains区分大小写的,(虽然可以用indexof解决)
2)strs = strCnn.Split(';'),str.IndexOf("=") 用";" "="分隔时.如果sa密码含有";"或"="时候就会出现问题
上面的方法也只能获取到 DataSource 跟 Database,用户密码无法获取
大家有更好的方法吗?
string strCnn="Data Source=.;Initial Catalog=DianJiCS;Persist Security Info=True;User ID=sa;Password=sa";
string[] strs;
strs = strCnn.Split(';');
string path = "";//数据库备份路径
string dataBaseName = "";//数据库名称
string hostName = "";//当前连接的SqlServer服务器名称
string userID = "";//SQLServer连接用户名
string password = "";//SQLServer连接密码
#region 获取
foreach (string str in strs)
{
if (str.Contains("Data Source") || str.Contains("Server"))//SQLServer服务器名称
{
hostName = str.Substring(str.IndexOf("=") + 1);
}
else
{
if (str.Contains("Initial Catalog") || str.Contains("Database"))
{
dataBaseName = str.Substring(str.IndexOf("=") + 1);
}
else
{
if (str.Contains("User ID") || str.Contains("UID"))
{
userID = str.Substring(str.IndexOf("=") + 1);
}
else
{
if (str.Contains("Password") || str.Contains("PWD"))
{
password = str.Substring(str.IndexOf("=") + 1);
}
}
}
}
}
#endregion
但觉得该方法有点问题,
1)str.Contains区分大小写的,(虽然可以用indexof解决)
2)strs = strCnn.Split(';'),str.IndexOf("=") 用";" "="分隔时.如果sa密码含有";"或"="时候就会出现问题
using (SqlConnection connection = new SqlConnection(ConnectionString))
{
string DataSource = connection.DataSource;
string Database = connection.Database;
}
上面的方法也只能获取到 DataSource 跟 Database,用户密码无法获取
大家有更好的方法吗?
...全文
相关推荐
[源码]C#连接SQLSERVER代码
**连接字符串**:在C#中,我们使用SqlConnection类的构造函数来创建连接对象,需要提供一个包含数据库服务器信息、数据库名、用户名和密码的连接字符串。3.
c# 导出MSSQL表数据 Insert语句
**建立数据库连接**:在C#中,使用`SqlConnection`类的构造函数创建一个连接对象,传入数据库连接字符串。连接字符串应包含服务器名、数据库名、用户名和密码等信息。
C#实现MSSQL数据库附加
**建立SqlConnection**:首先,需要创建一个SqlConnection对象,指定连接字符串以连接到MSSQL服务器。连接字符串应包含服务器名、实例、用户名和密码等信息。2.
C# 连接MSSQL数据库源码实例
创建SqlConnection对象时,需要提供有效的连接字符串,其中包括服务器名称、数据库名称、用户名和密码等信息。3.
c#操作sqlserver数据库的简单示例
在`Main`方法中,首先初始化数据库连接字符串`connSting`,指定了服务器(`localhost`表示本地服务器)、数据库名(`student`)以及集成安全性(`Integrated Security


