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

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



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

ЗЫ: у Хвастунова в IBEScript появились директивы условного выполнения скриптов.
...
Рейтинг: 0 / 0
26.01.2004, 15:30
    #32387969
aPT
aPT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такой скрипт
А как насчет
Код: plaintext
delete from rdb$procedures where  rdb$procedure_name='proc'
...
Рейтинг: 0 / 0
26.01.2004, 15:40
    #32387990
fеdd 
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такой скрипт
все это нами с Мимопроходящим считается грязным хаком..
...
Рейтинг: 0 / 0
26.01.2004, 15:42
    #32387992
aPT
aPT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такой скрипт
Ну тады пишите UDF
...
Рейтинг: 0 / 0
26.01.2004, 15:44
    #32387997
fеdd 
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такой скрипт
я имел ввиду - зачем дропать процедуру из процедуры? ее не надо было писать, если она неправильная... ;)
...
Рейтинг: 0 / 0
26.01.2004, 15:49
    #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
26.01.2004, 17:16
    #32388152
pole
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такой скрипт
мне нужен простой скрипт для установки ХП, если ее нет значит поставить если есть значит удалить и поставить

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

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

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

это типа того, что делает mysqldump? а если у провайдера нету ibe, то как закачать такой скрипт? как оно вообще работает? я кончено, буду rtfm, а вот Поле не хочет чё-та...
...
Рейтинг: 0 / 0
26.01.2004, 18:04
    #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
26.01.2004, 18:14
    #32388247
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такой скрипт
poleбудет работать моя програмуля которая ХП устанавливает на сервер ?
Неужели так сложно в твоей программе сделать запрос:
Код: plaintext
1.
SELECT  1  AS FOUND FROM RDB$PROCEDURES
  WHERE RDB$PROCEDURE_NAME = 'PROC';

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

BdpProvider
...
Рейтинг: 0 / 0
27.01.2004, 03:42
    #32388480
StarWind
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такой скрипт
По поводу скрипта....
Индексы проверял? Размер таблицы какой? iner можно не указывать
...
Рейтинг: 0 / 0
27.01.2004, 08:07
    #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
27.01.2004, 08:20
    #32388524
Denis Uskov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такой скрипт
Версия сервера не указана, поэтому скажу для FB1.5:
Есть такая штука, как RECREATE как раз то что нужно!
------------------------
С уважением, Denis Uskov
...
Рейтинг: 0 / 0
27.01.2004, 09:38
    #32388579
pole
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Такой скрипт
Сервер IB 6.0

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


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