powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Такой скрипт
23 сообщений из 23, страница 1 из 1
Такой скрипт
    #32387854
pole
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Можно ли выполнить следующий скрипт ?

Код: plaintext
1.
IF(exists(SELECT RDB$PROCEDURE_NAME FROM RDB$PROCEDURES WHERE RDB$PROCEDURE_NAME='PROC')) then
  DROP PROCEDURE PROC ;



у меня не получается
...
Рейтинг: 0 / 0
Такой скрипт
    #32387863
Фотография mv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где? триггере, или, например, хранимой процедуре, то можно, наверное. А напрямую нельзя. Ну, еще: если нет зависимого от процедуры кода.
...
Рейтинг: 0 / 0
Такой скрипт
    #32387900
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И давно это?
Выполнять DDL в процедурах...
Ню-ню...
:о/

ЗЫ: у Хвастунова в IBEScript появились директивы условного выполнения скриптов.
...
Рейтинг: 0 / 0
Такой скрипт
    #32387969
aPT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А как насчет
Код: plaintext
delete from rdb$procedures where  rdb$procedure_name='proc'
...
Рейтинг: 0 / 0
Такой скрипт
    #32387990
fеdd 
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
все это нами с Мимопроходящим считается грязным хаком..
...
Рейтинг: 0 / 0
Такой скрипт
    #32387992
aPT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну тады пишите UDF
...
Рейтинг: 0 / 0
Такой скрипт
    #32387997
fеdd 
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
я имел ввиду - зачем дропать процедуру из процедуры? ее не надо было писать, если она неправильная... ;)
...
Рейтинг: 0 / 0
Такой скрипт
    #32388009
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Джентльмены, я же уже сказал, всё что желает господин pole,
заложено в IBExpert и IBEScript

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
$IFEXISTS

Tests the existence of the specified database object or data and executes the following block of the script if object or data exist in the database. 

Syntax 

   1 .  {$IFEXISTS DOMAIN|TABLE|VIEW|TRIGGER|PROCEDURE|
                 EXCEPTION|GENERATOR|UDF|ROLE object_name}
   2 .  {$IFEXISTS select_statement}
  
Example 

The following script drops exception InvalidUserID if the one exists in the database: 

  {$IFEXISTS EXCEPTION  "InvalidUserID" }

     DROP EXCEPTION  "InvalidUserID" ;

  {$ENDIF}
  

The next script alters a procedure: 

  {$IFEXISTS SELECT RDB$PROCEDURE_NAME
             FROM RDB$PROCEDURES
             WHERE RDB$PROCEDURE_NAME = 'GETDBVER'}

     ALTER PROCEDURE GETDBVER
     RETURNS (
         VER INTEGER)
     AS
     begin
       ver =  2 ;
       suspend;
     end;

  {$ENDIF}


А в отношении "грязных хаков", поддерживаю неодобрение ;)
...
Рейтинг: 0 / 0
Такой скрипт
    #32388152
pole
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
мне нужен простой скрипт для установки ХП, если ее нет значит поставить если есть значит удалить и поставить

непонятно, это считается грязным хаком ?
...
Рейтинг: 0 / 0
Такой скрипт
    #32388158
Фотография fedd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я имел ввиду DDL в процедурах - хак.

а скрипт - тут я не могу помочь - не умею сам ;))
...
Рейтинг: 0 / 0
Такой скрипт
    #32388169
pole
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а в MSSQL можна :(
...
Рейтинг: 0 / 0
Такой скрипт
    #32388185
Фотография fedd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну плохо это все равно...
...
Рейтинг: 0 / 0
Такой скрипт
    #32388193
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Парни! Никак не пойму, чем вас не устраивает IBExpert , IBEScript
и его конструкция $IFEXISTS , о которой я тут талдычу?!
...
Рейтинг: 0 / 0
Такой скрипт
    #32388211
Фотография fedd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а я про нее ничего не знаю!

ты Полю расскажи, что это, а я послушаю... или хелп почитаю, когда приспичит...

это типа того, что делает mysqldump? а если у провайдера нету ibe, то как закачать такой скрипт? как оно вообще работает? я кончено, буду rtfm, а вот Поле не хочет чё-та...
...
Рейтинг: 0 / 0
Такой скрипт
    #32388231
pole
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
to Мимопроходящий:
может и устраивает, но как это будет работать если на машине нет IBExpert и как будет работать моя програмуля которая ХП устанавливает на сервер ?

да попутно еще вопросик возник, но не по этой теме:

есть две таблицы, в одной две FK на другую, мне нужно сделать объединенный запрос типа такого

Код: plaintext
1.
2.
select table2.id_t2, table2.c2 from table2
inner join table1 on table2.id_t2=table1.id_a or table2.id_t2=table1.id_b
where table1.expr like 'expretion'


при таком запросе интербейс тихонько надрывается на полминуты, может можно как то оптимизировать, я не дохожу как
...
Рейтинг: 0 / 0
Такой скрипт
    #32388247
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
poleбудет работать моя програмуля которая ХП устанавливает на сервер ?
Неужели так сложно в твоей программе сделать запрос:
Код: plaintext
1.
SELECT  1  AS FOUND FROM RDB$PROCEDURES
  WHERE RDB$PROCEDURE_NAME = 'PROC';

И на основании результата принимать решение - DROP 'ать, или нет.
...
Рейтинг: 0 / 0
Такой скрипт
    #32388249
pole
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Можно, просто хотел сразу скрипт загнать
...
Рейтинг: 0 / 0
Такой скрипт
    #32388256
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чем выполняешь скрипт?
...
Рейтинг: 0 / 0
Такой скрипт
    #32388264
pole
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Провайдер какой чтоли ?

BdpProvider
...
Рейтинг: 0 / 0
Такой скрипт
    #32388480
StarWind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По поводу скрипта....
Индексы проверял? Размер таблицы какой? iner можно не указывать
...
Рейтинг: 0 / 0
Такой скрипт
    #32388520
pole
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
select table2.id_t2, table2.c2 from table2
inner join table1 on table2.id_t2=table1.id_a or table2.id_t2=table1.id_b
where table1.expr like 'expression'


to StarWind:
в table2 pk - id_t2

в table1
id_a - fk
id_b - fk

таблицы table1 гдето 30к записей, в table2 гдето 65к
...
Рейтинг: 0 / 0
Такой скрипт
    #32388524
Denis Uskov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Версия сервера не указана, поэтому скажу для FB1.5:
Есть такая штука, как RECREATE как раз то что нужно!
------------------------
С уважением, Denis Uskov
...
Рейтинг: 0 / 0
Такой скрипт
    #32388579
pole
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сервер IB 6.0

А можно пару примерчиков ?
...
Рейтинг: 0 / 0
23 сообщений из 23, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Такой скрипт
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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