2013-01-01 16 views
14

Olası Çoğalt:
Error with mysql procedures ERROR 1304 & ERROR 1305Önceden var olan bırakma yordamı?

Ben bir prosedür düşmesi bir komut çalıştırmayı denediğinizde:

: Bunu yaparak

DROP PROCEDURE create_datetable 

Ben bir uyarı olsun

1304 PROCEDURE create_datetable already exists 

Bundan sonra aynı ada sahip yeni bir prosedür oluşturmaya çalışırken, aynı uyarıyı alıyorum.

Bu ne anlama geliyor?

+0

Tam olarak ne 'procedureName' kullanıyorsunuz? –

+0

Eğer herhangi bir fark yaratırsa, yazıyı düzenledim. – MikkoP

+0

@bonCodigo tarafından önerildiği gibi 'DAHA FAZLA PROSEDÜRÜ '' denediniz mi? –

cevap

28

Referans: Drop Procedure.

kodu:

DROP PROCEDURE IF EXISTS procedureName; 
... 

Düzenleme:

prosedürü yeniden adlandırmak deneyin ve sonra bu yazı uyarınca bırakmak için deneyebilir miyim

: Rename a mysql procedure?

bu deneyin:

Ayrıca
UPDATE `mysql`.`create_DataTable` 
SET name = '<new_proc_name>', 
specific_name = '<new_proc_name>' 
WHERE db = '<database>' AND 
name = '<old_proc_name>'; 

not: bu işlem için kullanıcılara ayrıcalık verdiyseniz siz de newProcedure prosedür adını güncellemeniz gerekecektir.

UPDATE `mysql`.`create_DataTable` 
SET Routine_name = '<new_proc_name>' 
WHERE Db = '<database>' AND 
    Routine_name = '<old_proc_name>'; 
FLUSH PRIVILEGES; 

tüm prosedürleri silmek için özgürlük var mı? Eğer öyleyse lütfen şu yazıyı deneyin: Drop all stored procedures in MySQL or using temporary stored procedures ve sonrası2: Drop all stored procedures in MySQL or using temporary stored procedures.

+0

Bunun ile "PROCEDURE" mevcut değil. Bir tane yaratmaya çalışırken, aynı şeyi söylüyor. Kullanmaya çalıştığımda, prosedür mevcut değil diyor. – MikkoP

+0

@MikkoP Deneme yapabileceğiniz ek rutinler ekleyerek cevabı güncelledim. Lütfen bir atış ve yorum yapın. – bonCodigo

İlgili konular