2016-12-01 89 views
0

我尝试使用Ado.Net进行Sql连接。我创建一个ConsoleApplication并从我的数据库中获取值NameUnitPrice。执行后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(); 
     } 
    } 
} 

My Database

+0

您能否提供正确的连接字符串,例如MS SQL Server Managment Studio? – Alexander

+0

添加错误信息 –

+0

在谷歌搜索例外,你会发现你的问题。 – mybirthname

回答

3

假设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"; 

您可以查看https://www.connectionstrings.com/

+0

感谢您的帮助。我对数据源犯了一个错误。它正在工作 –

0

我想连接字符串应该是正确的"Data Source=EMINCIFTCI/EMIN;Initial Catalog=Ado;User ID=sa;Password=10203040;"

应该有分号到底