2013-12-12 4 views
2

Каков наилучший способ выполнить запрос в C# + SQL Server CE? Мне нужно создать таблицу, но после трех дней неудачных попыток я понимаю, что я действительно не могу сделать это для себя ... Поэтому я здесь прошу помощи.Создать запрос таблицы с SQL Server CE

Я пробовал эти темы:

Но все пути я пытался показать мне исключение ... Я запутался, где моя ошибка?

Мой текущий код:

public void Connect() 
{ 
    try 
    { 
     string FileName = "DataBase"; 

     using (SqlCeConnection myConnection = new SqlCeConnection(@"Data Source=|DataDirectory|\" + FileName + ".sdf;Password=Z123")) 
     { 
      string query = "create table EXP(ID int, source int)"; 
      int i; 

      SqlCommand cmd = new SqlCommand(query, connection); 
      cmd.con.open(); 
      i = cmd.ExecuteNonQuery(); 
     } 
    } 
    catch (SqlCeException ae) 
    { 
     MessageBox.Show(ae.Message.ToString()); 
    } 
} 

Большое спасибо!

+0

Что значение 'filename'? Если вы получите его из 'System.Io.File', он уже включает« .sdf ». Кроме того, всякий раз, когда у вас возникает вопрос об исключении, ** покажите нам исключение **. –

ответ

3

Если вы используете CE SQL Server, то вам нужно использовать SqlCeCommand (не SqlCommand - это для полномасштабного SQL Server).

Так изменить код на:

using (SqlCeConnection myConnection = new SqlCeConnection(@"Data Source=|DataDirectory|\" + FileName + ".sdf;Password=Z123")) 
{ 
    string query = "create table EXP(ID int, source int)"; 

    // use SqlCeCommand here!! Also: use the "myConnection" SqlCeConnection you're 
    // opening at the top - don't use something else..... 
    SqlCeCommand cmd = new SqlCeCommand(query, myConnection); 

    myConnection.open(); 
    cmd.ExecuteNonQuery(); 
    myConnection.Close(); 
} 
Смежные вопросы