2014-01-02 2 views
0

Привет всем У меня есть небольшое приложение, чтобы добавить расходы на день.Указанная таблица не существует. [table_Name] error

Для этого я использую базу данных SQL compact (CE). При вводе записи в название таблицы Расходы Я получаю ошибку

Указанная таблица не существует. [Расходы]

Код вставки

using (var con =new SqlCeConnection(@"Data Source=|DataDirectory|\Database\Acadamy.sdf; 
     Persist Security Info=False")) 
{ 
    con.Open(); 
    try 
    { 
    var Cmd = new SqlCeCommand(); 
    String sqlAddNew = @"INSERT INTO Expenses (name, amount,receipt,details) 
       Values(@name,@amount,@receipt,@details)"; 
    Cmd = new SqlCeCommand(sqlAddNew, con); 
    Cmd.Parameters.Add("@name", SqlDbType.NVarChar).Value = txtName.Text; 
    Cmd.Parameters.Add("@amount", SqlDbType.NVarChar).Value = txtAmount.Text; 
    Cmd.Parameters.AddWithValue("@receipt", SqlDbType.NVarChar).Value = txtRecept.Text; 
    Cmd.Parameters.AddWithValue("@details", SqlDbType.NVarChar).Value = txtDetails.Text; 
    Cmd.ExecuteNonQuery(); 
    } 
    catch (Exception exception) 
    { 
     txtAmount.Text = exception.ToString(); 
    } 
    finally 
    { 
     if (con.State == ConnectionState.Open) con.Close(); 
    } 
    } 
} 

Я не получаю, почему эта ошибка происходит. Acadamy.sdf структура, как показано ниже:

enter image description here

Я могу получить данные из другой таблицы той же базы данных. В чем проблема?

+1

Ну, предположительно таблица не существует, а другая таблица, которую вы используете, делает. Внимательно проверьте название таблицы. –

+2

У вас есть таблица «Расходы» в вашем «Acadamy.sdf»? –

+0

Yap, см. Обновленный вопрос. –

ответ

1

Всякий раз, когда я получаю сообщение об ошибке в таблице, которая не существует, я использую SQL Server Management Studio и проверяю, действительно ли таблица отсутствует или у меня есть опечатка в моем запросе.

К сожалению, текущая версия Management Studio больше не поддерживает SQL Server Compact Database, и вам придется использовать версию 2008 года. Вы можете получить его непосредственно у Microsoft: SQL Server 2008 R2 Management Studio Express

+0

Я уже использую версию 2008 года. Скажите, как мы можем проверить? –

+0

Вы можете написать команду SQL непосредственно внутри Management Studio. Это дает ту же ошибку? –

+0

Я не могу проверить его в студии управления, но я проверил в LINQPad, и он работает. –

 Смежные вопросы

  • Нет связанных вопросов^_^