2014-02-06 3 views
2

Я новичок в C#, мне нужно подключиться к базе данных .sdf, я использую следующее соединение, но получаю исключение, и я не знаю, почемуSQLConnection.Open() с .sdf-базой данных; бросать исключение

 bool stat = true; 
     string connectionString = "Data Source=|DataDirectory|'\'CarsDB.sdf;Initial Catalog=TestDB;Integrated Security=true;"; 

     SqlConnection conn = new SqlConnection(connectionString); 


     try 
     { 
      conn.Open(); 
      textBox2.Text = "true"; 

     } 
     catch (System.Exception) 
     { 
      stat = false; 
      textBox2.Text = "false"; 
     } 

Исключение:

При установлении соединения с SQL Server возникла связанная с сетью или конкретная ошибка экземпляра. Сервер не найден или не был доступен. Проверьте правильность имени экземпляра и настройте SQL Server для удаленного подключения. (поставщик: поставщик Named Pipes, ошибка: 40 - не удалось открыть соединение с SQL Server).

+2

Вы работаете с базой данных SQL CE, так что вы должны использовать, например. 'SqlCeConnection', а не' SqlConnection'. – Luaan

+0

Это работает. Спасибо! – user3067340

ответ

1

здесь код:

bool stat 
     string connectionString = "Data Source=|DataDirectory|'\'CarsDB.sdf;Initial Catalog=TestDB;Integrated Security=true;"; 
try 
{ 
    conn = new SqlCeConnection(connectionString); 
    conn.Open(); 
     textBox2.Text = "true"; 

    /* SqlCeCommand cmd = conn.CreateCommand(); 
    cmd.CommandText = "INSERT INTO Customers ([Customer ID], [Company Name]) Values('NWIND', 'Northwind Traders')"; 

cmd.ExecuteNonQuery();*/ 

} 
catch (System.Exception) 
    { 
     stat = false; 
     textBox2.Text = "false"; 
    } 
Смежные вопросы