Я получаю синтаксическую ошибку в приложении c # при вставке значений с помощью условия Where - PullRequest
0 голосов
/ 16 мая 2018
    private void button1_Click(object sender, EventArgs e)
    {
        using (SQLiteConnection con = new 
    SQLiteConnection(connectionstring))
        {
            SQLiteCommand cmd = new SQLiteCommand(connectionstring);
            string CMM = "INSERT INTO ALARM  (ALARM_ID, ALARM ) SELECT 
       1,'TEMP' WHERE NOT EXISTS(SELECT FLAG FROM ALARM WHERE FLAG = 0)";

            cmd.CommandText = CMM;
            cmd.Connection = con;
            con.Open();

            cmd.ExecuteNonQuery();
            }

Я получаю эту ошибку рядом с «SELECT»: синтаксическая ошибка, я не могу решить эту проблему.Этот запрос работает нормально в браузере sqlite. Пожалуйста, помогите мне Спасибо заранее

1 Ответ

0 голосов
/ 16 мая 2018

Ваш запрос, кажется, пропустил from, откуда вы получаете данные:

INSERT INTO ALARM  (ALARM_ID, ALARM ) 
  SELECT    1,'TEMP' 
   FROM somehwere -- you where missing this.
   WHERE NOT EXISTS(SELECT FLAG FROM ALARM WHERE FLAG = 0)

Или вы просто хотите вставить один набор значений:

INSERT INTO ALARM  (ALARM_ID, ALARM ) 
VALUES (1, 'TEMP')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...