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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.05.2008, 17:12   #1
Proof
Пользователь
 
Регистрация: 20.02.2008
Сообщений: 63
Вопрос Помогите разобраться

Здравствуйте!
Помогите разобраться

dm.ibtransaction1.StartTransaction;
dm.IBQuery1.SQL.Clear;
dm.IBQuery1.SQL.Add(zapros);
dm.IBQuery1.Open;

dm.ibtransaction1.Commit;

При выполнения этой части кода выдается ошибка

dynamic sql error sql error code = -104 unexpected end of command

Переменная zapros строкового типа выглядит, примерно так create table table1 (f1 char(20), f2 int)
Proof вне форума Ответить с цитированием
Старый 17.05.2008, 17:31   #2
D-mon
Форумчанин
 
Регистрация: 22.06.2007
Сообщений: 414
По умолчанию

Попробуй выполнить запрос не в компоненте...
Нет невыполнимых задач, всё дело времени...
D-mon вне форума Ответить с цитированием
Старый 17.05.2008, 17:37   #3
Proof
Пользователь
 
Регистрация: 20.02.2008
Сообщений: 63
По умолчанию

Если подставить строчку

dm.IBQuery1.SQL.Add('create table table1 (f1 char(20), f2 int)');

то таблица создается.
Proof вне форума Ответить с цитированием
Старый 17.05.2008, 17:46   #4
D-mon
Форумчанин
 
Регистрация: 22.06.2007
Сообщений: 414
По умолчанию

Значит надо константу типа '...'. Может в переменной типа стринг ещё сто то есть (типа доп символы), вот оно и материться.
Нет невыполнимых задач, всё дело времени...
D-mon вне форума Ответить с цитированием
Старый 17.05.2008, 17:52   #5
Proof
Пользователь
 
Регистрация: 20.02.2008
Сообщений: 63
По умолчанию

Не помогает! Я выводил переменную и там нормально составленный запрос.
Proof вне форума Ответить с цитированием
Старый 17.05.2008, 17:54   #6
D-mon
Форумчанин
 
Регистрация: 22.06.2007
Сообщений: 414
По умолчанию

Ну так выводит оно нормально, а вспомогательных символов можешь не увидеть, так как они не выводятся стандартными способами.
Нет невыполнимых задач, всё дело времени...
D-mon вне форума Ответить с цитированием
Старый 17.05.2008, 17:55   #7
Proof
Пользователь
 
Регистрация: 20.02.2008
Сообщений: 63
По умолчанию

А как их можно просмотреть?
Proof вне форума Ответить с цитированием
Старый 17.05.2008, 17:57   #8
D-mon
Форумчанин
 
Регистрация: 22.06.2007
Сообщений: 414
По умолчанию

Наверно да. Скорее всего... Но я тут не помогу. Просто я никогда не видел что бы в SQL.Add(zapros) засовывали переменную, только константу... А я работаю с SQL 5-ть лет...

.IBQuery1.SQL.Add(const S:string);

Тобиш, Var S:string нельзя туда запузырить.
Нет невыполнимых задач, всё дело времени...

Последний раз редактировалось D-mon; 17.05.2008 в 18:00.
D-mon вне форума Ответить с цитированием
Старый 17.05.2008, 18:02   #9
Proof
Пользователь
 
Регистрация: 20.02.2008
Сообщений: 63
По умолчанию

Мне просто необходимо создавать каждый раз разные запросы и по этому приходится засовывать переменную!
Proof вне форума Ответить с цитированием
Старый 17.05.2008, 18:09   #10
D-mon
Форумчанин
 
Регистрация: 22.06.2007
Сообщений: 414
По умолчанию

Ну тогда попробуй не АДД, а типа АддСтрингс или ЛоадВромСтрим... Может что-то подойдёт, Может ЛоадФромФайл предварительно сохранив к тхт...
Нет невыполнимых задач, всё дело времени...
D-mon вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помогите разобраться Tanuska___:) БД в Delphi 1 04.09.2008 14:56
Помогите разобраться с С++ igroman Общие вопросы C/C++ 1 03.08.2008 23:15
Помогите разобраться! SerSasha Помощь студентам 4 09.06.2008 10:00
Помогите разобраться! Кот Microsoft Office Excel 3 14.08.2007 19:48