Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2017.11.19;
Скачать: [xml.tar.bz2];

Вниз

Программное удаление в Firebird   Найти похожие ветки 

 
Михалыч   (2015-12-25 12:53) [0]

Здравствуйте мастера! Помогите пожалуйста,а то нигде не могу найти живой пример нужного мне кода. Использую Firebird 2.5. Надо добавить колонку в таблицу и удалить хранимку,тригер и генератор в существующей таблице,чтобы потом с помощью скрипта создать новые. Делаю так:
try
   with DataModule1.IBQuery1 do
   begin
   Close;
   SQL.Clear;
   SQL.Add("ALTER TABLE MyTable");
   SQL.Add("ADD NewField VARCHAR(20)");
   SQL.Add("DROP PROCEDURE PROCMyTable");
   SQL.Add("DROP TRIGGER MyTable_BI");
   SQL.Add("DROP SEQUENCE GEN_MyTable_ID");
   if not Transaction.Active then Transaction.StartTransaction;
   ExecSQL;
   Transaction.Commit;
   Transaction.Active := false;
   Close;
   end;
 except
   on E: Exception do
   begin
   if DataModule1.IBQuery1.Active then DataModule1.IBQuery1.Transaction.Rollback;
   Application.MessageBox(PChar(E.Message), "Ошибка", MB_ICONERROR);
   end;
 end;
Получаю ошибку выполнения в программе:"Tokеn unknown DROP!"
Что делаю не так?


 
Кщд ©   (2015-12-25 13:15) [1]

Михалыч   (25.12.15 12:53)  
доку надо чтить
TIBScript


 
Михалыч   (2015-12-25 13:22) [2]

А без написания и выполнения скрипта напрямую из программы нельзя?
Или надо сменить Query на IBScript в коде?


 
macrodens ©   (2015-12-27 13:40) [3]

Точно не уверен (нет сейчас огнептица под рукой, только мускул), но вероятно, что точку с запятой поставить необходимо после каждого действия


 
Кщд ©   (2015-12-28 07:14) [4]

>macrodens ©   (27.12.15 13:40) [3]
вероятно, документацию надо читать прежде, чем давать странные советы


 
macrodens ©   (2015-12-28 09:43) [5]


Кщд ©   (28.12.15 07:14) [4]
вероятно, документацию надо читать прежде, чем давать странные советы


Ну так а что же вы ее не читаете?
То что вы предложили в [2], вполне уместно, однако, у ТС в SQL коде есть и другая ошибка - ";" после каждого оператора поставить нужно.


 
Кщд ©   (2015-12-28 11:38) [6]

>macrodens ©   (28.12.15 09:43) [5]
одно дело разово ступить, прочитать документацию и осознать
совсем другое - воинственно упорствовать в своем заблуждении

надеюсь, не затруднит привести пример рабочего кода, в котором с помощью TIBQuery выполняется скрипт?



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2017.11.19;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.006 c
2-1450907758
Black
2015-12-24 00:55
2017.11.19
динамический Lookup список для TComboBoxEx


2-1451037235
Михалыч
2015-12-25 12:53
2017.11.19
Программное удаление в Firebird


2-1449253907
Валя
2015-12-04 21:31
2017.11.19
Запись/чтение Bitmap+текстовое описание в файл


15-1467649943
Копир
2016-07-04 19:32
2017.11.19
И не скучно Вам?


15-1467813185
Unbekannt
2016-07-06 16:53
2017.11.19
Проблема с печатью этикеток на разных принтерах





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский