![]() |
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]() ![]() ![]() |
|
P&$ |
|
|||
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 9.7.2002 Репутация: нет Всего: нет |
Привет!
Озадачиваю! 1. Для Query, во время выполнения программы, надо создать дополнительное поле (вычисляемое). Делаю так: var ADR:TStringField; begin ............ Query1.FieldDefs.Add('ADR',ftString,256); ADR:=TStringField.Create(Self); ADR.FieldKind:=fkCalculated; ADR.FieldName:='ADR'; ADR.Calculated:=True; Query1.Fields.Add(ADR); ........ END; При открытии запроса возникает ошибка, мол: Field 'ADR' has no dataset ! Вышел из положения тем, что создаю все поля в конструкторе, а затем ненужные Destroy. Но это, по моему, корявый выход. Как создать поле? Решение нужно какможно скорее! (т.к. иначе предется пользоваться корявыми ) И исче: 2. Как из программы (exe) выполнять скрипты InterBase? ![]() |
|||
|
||||
Medved |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 7209 Регистрация: 15.9.2002 Где: Kazakhstan, Astan a Репутация: 14 Всего: 154 |
Не знаю, у меня твой код работает...... и открывает, и закрывает....
-------------------- |
|||
|
||||
Medved |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 7209 Регистрация: 15.9.2002 Где: Kazakhstan, Astan a Репутация: 14 Всего: 154 |
Что ты хочешь этим сказать? Абослютно непонятно.... Если ты хочешь выполнить скрипт из приложения, написанного тобой, то просто весь скрипт загоняешь в свойство SQL компонента TQuery, а затем выпоняешь метод Execute (Query1.Execute). -------------------- |
|||
|
||||
P&$ |
|
|||
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 9.7.2002 Репутация: нет Всего: нет |
Да загоняю!
Пример скрипта: CREATE TABLE TovarGr ( kod SMALLINT NOT NULL PRIMARY KEY, name VARCHAR(20) NOT NULL ); CREATE GENERATOR k_TovarGr; SET GENERATOR k_TovarGr TO 0; SET TERM ^; CREATE TRIGGER id_TovarGr FOR TovarGr ACTIVE BEFORE INSERT POSITION 0 AS BEGIN IF (NEW.kod IS NULL) THEN NEW.kod=GEN_ID(k_TovarGr,1) ; END^ SET TERM ;^ Он выполняет только первую, а на остальные ругается. Я подозреваю в нем синтаксис изменяется, но как?! |
|||
|
||||
Medved |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 7209 Регистрация: 15.9.2002 Где: Kazakhstan, Astan a Репутация: 14 Всего: 154 |
Попробуй убрать "SET TERM ^"; и знак "^"; //Хотя однозначно не могу гарантировать, что будет работать....
-------------------- |
|||
|
||||
P&$ |
|
|||
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 9.7.2002 Репутация: нет Всего: нет |
Да он ругается уже на CREATE GENERATOR, т.е. я так понимаю, что разделитель SQL команд в скрипте не как в самом IB ; а какой-то другой.
|
|||
|
||||
Fantasist |
|
|||
![]() Лентяй ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1517 Регистрация: 24.3.2002 Репутация: нет Всего: 41 |
Возможно стоит востпользоваться компонентами IB (IBQuery,IBSQL).
-------------------- Волны гасят ветер... |
|||
|
||||
P&$ |
|
|||
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 9.7.2002 Репутация: нет Всего: нет |
Дык я ими и пользуюсь!
![]() Delphi 5 IB 5 ? Но ругаетси! ![]() |
|||
|
||||
Medved |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 7209 Регистрация: 15.9.2002 Где: Kazakhstan, Astan a Репутация: 14 Всего: 154 |
А на что именно он у тебя ругается? Запости сообщение об ошибке... -------------------- |
|||
|
||||
P&$ |
|
|||
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 9.7.2002 Репутация: нет Всего: нет |
Dynamic SQL Error
SQL error code = -104 Token unknown - line 7 char -1 CREATE. Мол не знает он команды create! (Но это-ж отмаз ) ![]() Если "скармливаю" скрипт isql то все зашибись. А Вы вообще такое делали? Еще вопрос назрел, тут по дури установил Delphi и IB 6 - потом решил вернуть 5 (ну на работе 5, а дома "решил поэксперементировать"), теперь IB5 не работает, я уже все файлы, что в ib_install.log принес с рабочего компа (тат то все в норме) - нифига - делает вид что работает, а при попытке создать таблицу пишет мол нет коннекта с базой ( IBGuard в левом углу аж краснеет) err - 901. Это смертельно? (То бишь Win сносить, или в реестре можно поковыряться?) |
|||
|
||||
Medved |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 7209 Регистрация: 15.9.2002 Где: Kazakhstan, Astan a Репутация: 14 Всего: 154 |
Это конечно не смертельно, но лучше все переустановить.... ИМХО самый быстрый способ....
-------------------- |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Общие вопросы" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |