Ado.net Sql连接
问题描述:
我尝试使用Ado.Net进行Sql连接。我创建一个ConsoleApplication并从我的数据库中获取值Name
和UnitPrice
。执行后Console表示无法打开连接。我犯了什么错误?Ado.net Sql连接
这里是我的代码:
using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
class ConsoleApplication1
{
static void Main()
{
string connectionString =
"Data Source=EMINCIFTCI/EMIN;Initial Catalog=Ado;User ID=sa;Password=10203040";
string queryString =
"SELECT Name, UnitPrice from dbo.Product "
+ "ORDER BY UnitPrice DESC;";
using (SqlConnection connection =
new SqlConnection(connectionString))
{
SqlCommand command = new SqlCommand(queryString, connection);
try
{
connection.Open();
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
Console.WriteLine("\t{0}\t{1}",
reader[0], reader[1]);
}
reader.Close();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
Console.ReadLine();
}
}
}
答
假设EMINCIFTCI/EMIN是您的计算机名和(我认为)SQL Server实例,你需要用一个反斜杠换正斜杠(二,从技术上讲,除非你使用逐字字符串)。
因此,使用
string connectionString =
"Data Source=EMINCIFTCI\\EMIN;Initial Catalog=Ado;User ID=sa;Password=10203040";
或
string connectionString =
@"Data Source=EMINCIFTCI\EMIN;Initial Catalog=Ado;User ID=sa;Password=10203040";
+0
感谢您的帮助。我对数据源犯了一个错误。它正在工作 –
答
我想连接字符串应该是正确的"Data Source=EMINCIFTCI/EMIN;Initial Catalog=Ado;User ID=sa;Password=10203040;"
应该有分号到底
您能否提供正确的连接字符串,例如MS SQL Server Managment Studio? – Alexander
添加错误信息 –
在谷歌搜索例外,你会发现你的问题。 – mybirthname