Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.04.2013, 19:12   #1
ElectronJournal
Новичок
Джуниор
 
Регистрация: 29.04.2013
Сообщений: 1
По умолчанию Ошибка при создании таблицы

Все нормально работает, но когда создается таблица, возникает вот такая ошибка: Ошибка синтаксиса, пропущен оператор в выражении запроса (((студенты.Группа)=1Pi))'. Но таблица все равно успешно создается.
Если тип поля в базе числовой, то все нормально, но мне нужен текстовой, и проблемы возникают только тогда, когда я ставлю текстовой тип.


[spoiler]//проверка на наличие таблицы, если ее нет - создаем
if not tab1 then
if MessageBox(handle,PChar('Таблица "'+_name+'" отсутствует!'+#10#13+'Хотите ее создать?'),'ОШИБКА',MB_YESNO or MB_ICONQUESTION)=mrYes then
begin
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('CREATE TABLE '+_name+
' (NP COUNTER NOT NULL PRIMARY KEY,'+
' Фамилия varchar(50),'+
' Sred varchar(6))');
ADOQuery1.ExecSQL;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('INSERT INTO '+_name+' ( Фамилия )'+
' SELECT Студенты.Фамилия'+
' FROM Студенты'+
' WHERE (((Студенты.Группа)='+Grup.Text+')) '+
' ORDER BY Студенты.Фамилия;');
ADOQuery1.ExecSQL;
showmessage('Таблица "'+_name+'" Создана!....');
end;
[/spoiler]

Может посмотрите, что не так?
Изображения
Тип файла: jpg 1342.jpg (14.2 Кб, 131 просмотров)
ElectronJournal вне форума Ответить с цитированием
Старый 29.04.2013, 19:48   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Кавычки кто ставить будет? Да и скобками зачем злоупотреблять? Все круглые скобки ниже можно спокойно убрать, легче для чтения, запроса не убудет, да и СУБД не обидится, а только спасибо скажет
Код:
' WHERE (((Студенты.Группа)='''+Grup.Text+''')) '+
Цитата:
Создавать таблицы БД из программы, сделанной на Дельфи???
Согласен, не зачем. Структуру нормально разработать и такая необходимость отпадет
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 29.04.2013 в 19:53.
Аватар вне форума Ответить с цитированием
Старый 29.04.2013, 19:48   #3
Karabash
Форумчанин
 
Регистрация: 26.07.2009
Сообщений: 216
По умолчанию

Создавать таблицы БД из программы, сделанной на Дельфи???
Явный перегрев мозгового вещества.
Karabash вне форума Ответить с цитированием
Старый 29.04.2013, 20:01   #4
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

дети кулибина, чо.
eval вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ошибка при создании таблицы MSSQL Database Desktop Dimitrij94 Помощь студентам 0 06.03.2012 22:31
Ошибка при создании и (или) записи таблицы ProgDel БД в Delphi 5 07.11.2010 20:00
Ошибка при создании таблицы ProgDel БД в Delphi 5 07.11.2010 11:31
Ошибка при создании таблицы LAGOX SQL, базы данных 1 28.03.2009 00:46
Проблема при создании таблицы используя sql Proof БД в Delphi 2 26.02.2009 22:09