SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 14.07.2008 17:50:28

Igor Panshin
Завсегдатай
Зарегистрирован: 04.06.2008
Сообщений: 62

нельзя убивать из процедуры процедуру

не проходит эта конструкция
так как нельзя убивать из процедуры процедуру

CREATE PROCEDURE `dbo`.`dvsp_card_uninstall_{DA86FABF-4DD7-4A86-B6FF-C58C24D12DE2` ()
BEGIN
      DROP PROCEDURE IF EXISTS `dbo`.`dvsp_card_uninstall_{DA86FABF-4DD7-4A86-B6FF-C58C24D12DE2` ;
END;

А собственно говоря почему нельзя убивать? Это что противоречит интерпретирующему подходу? По сути это запрет на удаление информации о процедуре из системных таблиц. А таблицы можно удалять. А чем хуже процедуры таблиц? Дискриминация однакоsmile

Неактивен

 

#2 14.07.2008 19:45:04

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: нельзя убивать из процедуры процедуру

Действительно, дискриминация smile

Можете схитрить и стереть соответствующую строчку из mysql. Только тсс, так делать
нельзя wink

Неактивен

 

#3 15.07.2008 10:47:51

Igor Panshin
Завсегдатай
Зарегистрирован: 04.06.2008
Сообщений: 62

Re: нельзя убивать из процедуры процедуру

не проходит

SET @cmd=' DROP PROCEDURE IF EXISTS `dbo`.`dvsp_row_create_{AE691F32-AF72-46A4-8646-86754CD8087C}`  ';
PREPARE stmt FROM @cmd ;
EXECUTE stmt;

проходит

SET @cmd=' DROP TABLE IF EXISTS `dbo`.`dvsp_row_create_{AE691F32-AF72-46A4-8646-86754CD8087C}`  ';
PREPARE stmt FROM @cmd ;
EXECUTE stmt;

Да придется делать так как делать нельзя.

DELETE `INFORMATION_SCHEMA`.`ROUTINES` alis FROM `INFORMATION_SCHEMA`.`ROUTINES` alis
WHERE alis.`SPECIFIC_NAME` = 'dvsp_row_create_{AE691F32-AF72-46A4-8646-86754CD8087C}`  ;

И я получаю Access denuid to information_schema for root user. В общем то правильно, что ударили по рукам. Если бы перед этим не кастрировали, я бы согласился.

Что делать?
Чернышевский не только был писателем, он был первым программистом. Причем писал более здраво, чем некоторые его современники, поэтому и задал свой вопрос. Что делать?sad

Неактивен

 

#4 15.07.2008 10:49:30

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: нельзя убивать из процедуры процедуру

INFORMATION_SCHEMA - база read only, то есть по сути метабаза. Как уже правильно отметил paulus, тсс, системная база называется mysql

Неактивен

 

#5 15.07.2008 11:25:44

Igor Panshin
Завсегдатай
Зарегистрирован: 04.06.2008
Сообщений: 62

Re: нельзя убивать из процедуры процедуру

Да, спасибо. А я намека не понял. И это правильно так как, закрыв модификацию системных таблиц, MS SQL возвел себя в ранг непогрешимых. А мы как известно все грешны...

Неактивен

 

#6 15.07.2008 12:49:58

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: нельзя убивать из процедуры процедуру

MS SQL к этому форуму имеет лишь косвенное отношение. Я пока слежу, чтобы
все Ваши действия на нем имели смысл в MySQL в первую очередь, а в MS - как прийдется wink

Неактивен

 

#7 15.07.2008 14:35:14

Igor Panshin
Завсегдатай
Зарегистрирован: 04.06.2008
Сообщений: 62

Re: нельзя убивать из процедуры процедуру

Понятно, что mssql здесь не котируется и тем не менее его нельзя отрицать, также как и oracle. И некие сравнительные оценки для разных БД украсили бы этот форум. А может быть и привлекли многих на сторону Mysql.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson