powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / "Ошибка синтаксиса в предложении FROM"- которой нет.
22 сообщений из 22, страница 1 из 1
"Ошибка синтаксиса в предложении FROM"- которой нет.
    #33697632
Mike(bool Fun=true)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет народ. Подскажите откуда это берется:

// Простая команда удаления из БД:
strSQL = "DELETE * FROM Journal WHERE (Date<='2006:03:28')";
m_strFilter.Empty();
m_strSort.Empty();
Close();
Open(CRecordset::snapshot,strSQL,CRecordset::none);

// Когда проделываю этот SQL запрос в Access все работает
// Когда выполняется код, с Open'а я вылетаю в exeption
// Где стоит коментарий к ошибке: "Ошибка синтаксиса в предложении FROM"
// Вопрос почему так?


//Если еще добавить перед Open

CleanJournal->m_nFields=0;

// То вылетает Exeption с кодом 1003, что означает:

AFX_SQL_ERROR_EMPTY_COLUMN_LIST You attempted to open a table (or what you gave could not be identified as a procedure call or SELECT statement) but there are no columns identified in record field exchange (RFX) function calls in your DoFieldExchange override.

// Т.е. нет обработчика RFX для этого Open'а. Но обработчик мне никакой и ненужен ведь операция DELETE ничего не возвращает. Как быть?
...
Рейтинг: 0 / 0
"Ошибка синтаксиса в предложении FROM"- которой нет.
    #33697648
saint
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
добрый человек, а зачем звездочка перед FROM?
...
Рейтинг: 0 / 0
"Ошибка синтаксиса в предложении FROM"- которой нет.
    #33697651
Mike(bool Fun=true)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Чтобы удалить все записи удовлетворяющие условию из WHERE
...
Рейтинг: 0 / 0
"Ошибка синтаксиса в предложении FROM"- которой нет.
    #33697663
Фотография Cerebrum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а если так DELETE * FROM Journal WHERE (Journal.Date<='2006:03:28')
...
Рейтинг: 0 / 0
"Ошибка синтаксиса в предложении FROM"- которой нет.
    #33697682
Mike(bool Fun=true)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Journal.Date не помогает.
...
Рейтинг: 0 / 0
"Ошибка синтаксиса в предложении FROM"- которой нет.
    #33697797
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mike(bool Fun=true)Чтобы удалить все записи удовлетворяющие условию из WHERE
а, может, все-таки лучше звездочку убрать?
не знаю как в Access, а в других СУБД, которые я знаю, нет звездочки в DELETE
...
Рейтинг: 0 / 0
"Ошибка синтаксиса в предложении FROM"- которой нет.
    #33697803
ЮВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
saintдобрый человек, а зачем звездочка перед FROM?
авторЧтобы удалить все записи удовлетворяющие условию из WHERE

Стандарт SQL не требует звездочки.
Удаляются все записи, удовлетворющие условию WHERE.
Звездочка относится к выбираемым записи (в приведенном синтаксисе - к удаляемым полям ?).
...
Рейтинг: 0 / 0
"Ошибка синтаксиса в предложении FROM"- которой нет.
    #33697884
Mike(bool Fun=true)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я убирал эту злополучную * эффекта никакого. Та-же ошибка.
...
Рейтинг: 0 / 0
"Ошибка синтаксиса в предложении FROM"- которой нет.
    #33697936
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кстати, а почему для DELETE выполняешь Open ? а не Execute или ExecSQL?
ведь DELETE никакого набора данных не возвращает!
...
Рейтинг: 0 / 0
"Ошибка синтаксиса в предложении FROM"- которой нет.
    #33697945
Mike(bool Fun=true)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А можно в 2х словах как пользоватся этими Execute или ExecSQL?
Как их привязать к моей БД?
...
Рейтинг: 0 / 0
"Ошибка синтаксиса в предложении FROM"- которой нет.
    #33697960
Mike(bool Fun=true)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это вообщке Сишные функции? Что-то я их в MSDN не нахожу.
...
Рейтинг: 0 / 0
"Ошибка синтаксиса в предложении FROM"- которой нет.
    #33697967
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mike(bool Fun=true)А можно в 2х словах как пользоватся этими Execute или ExecSQL?
Как их привязать к моей БД?
я привел для примера эти два метода из Борландовых компонентов.
а исходный текст что-то не похож на борландовый... но я практически уверен, что какой-то аналог Execute существует.
...
Рейтинг: 0 / 0
"Ошибка синтаксиса в предложении FROM"- которой нет.
    #33697974
Mike(bool Fun=true)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
На запрос "какой-то аналог Execute из Borlad" врядли MSDN выдаст что-то внятное. Народ кто нибудь знает подобные функции в С++
...
Рейтинг: 0 / 0
"Ошибка синтаксиса в предложении FROM"- которой нет.
    #33697980
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mike(bool Fun=true)На запрос "какой-то аналог Execute из Borlad" врядли MSDN выдаст что-то внятное. Народ кто нибудь знает подобные функции в С++так среда разработки какая?
...
Рейтинг: 0 / 0
"Ошибка синтаксиса в предложении FROM"- которой нет.
    #33697985
Mike(bool Fun=true)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нашел: CDatabase::ExecuteSQL
...
Рейтинг: 0 / 0
"Ошибка синтаксиса в предложении FROM"- которой нет.
    #33697991
Mike(bool Fun=true)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Среда разработки VS.net
...
Рейтинг: 0 / 0
"Ошибка синтаксиса в предложении FROM"- которой нет.
    #33698016
Mike(bool Fun=true)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ура!!! Свершилось. Miksoft, спасибо за верно указанное направление.
Всем спасибо за участие.
...
Рейтинг: 0 / 0
"Ошибка синтаксиса в предложении FROM"- которой нет.
    #33698547
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ошибка синтаксиса есть, должно быть так:
strSQL = "DELETE Journal WHERE (Date<='2006:03:28')";
Скобки ни на фиг не нужны. Так что так:
strSQL = "DELETE Journal WHERE Date<='2006:03:28'";
...
Рейтинг: 0 / 0
"Ошибка синтаксиса в предложении FROM"- которой нет.
    #33698559
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivОшибка синтаксиса есть, должно быть так:
strSQL = "DELETE Journal WHERE (Date<='2006:03:28')";
Скобки ни на фиг не нужны. Так что так:
strSQL = "DELETE Journal WHERE Date<='2006:03:28'";
это не ошибка, со скобками тоже работает

а вот от неявного преобразования строки в дату я бы избавился...
...
Рейтинг: 0 / 0
"Ошибка синтаксиса в предложении FROM"- которой нет.
    #33698847
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoft
это не ошибка, со скобками тоже работает


Спасибо, а я-то и не знал !!!
...
Рейтинг: 0 / 0
"Ошибка синтаксиса в предложении FROM"- которой нет.
    #33699669
muk07
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если работает, то непонятно почему.
Разделителями в строке даты стоят двоеточия.
Я попробовал:
delete from Nakl where dat>'2007:08:09'
получил:
Syntax error converting character string to smalldatetime data type.
...
Рейтинг: 0 / 0
"Ошибка синтаксиса в предложении FROM"- которой нет.
    #33699670
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
muk07Если работает, то непонятно почему.
Разделителями в строке даты стоят двоеточия.
Я попробовал:
delete from Nakl where dat>'2007:08:09'
получил:
Syntax error converting character string to smalldatetime data type. miksoftа вот от неявного преобразования строки в дату я бы избавился...т.к. сильно зависит от настроек локали
...
Рейтинг: 0 / 0
22 сообщений из 22, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / "Ошибка синтаксиса в предложении FROM"- которой нет.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]