Geçen gün bir projenin veritabanına kullanıcı eklemek için prosedür yazarken sürekli syntax hatası alıp durdum. Gözümden kaçan şey ‘as’ isimli bir değişken adı veremeyecek olmammış.
Örnek kod aşağıdaki gibi;
DELIMITER // CREATE PROCEDURE sp_kullanici_ekle( IN `as` VARCHAR(50), IN ka VARCHAR(50), IN si VARCHAR(15), IN ep VARCHAR(50), IN ci BIT(1), IN ipp VARCHAR(40), IN kt DATETIME, IN kk VARCHAR(10), IN gs VARCHAR(255), IN gc VARCHAR(50), IN ak BIT(1), IN yi INT(11) ) BEGIN insert into Kullanici(adsoyad, kullaniciadi, sifre, eposta, cinsiyet, ip, kayittarihi, kayitkodu, guvenliksorusu, guvenlikcevabi, aktif, yetkiid) values(`as`, ka, si, ep, ci, ipp, kt, kk, gs, gc, ak, yi); END //
buradaki ´as´ şeklinde yazılan yere tırnak koymayınca Phpmyadmin onu mysql’in ‘as’ komutu olarak görüyor ve prosedürü çalıştırmıyor.
Buradan aldığım ders; ne olursa olsun bundan sonra mysql prosedür yazarken değişken isimlerini hep tırnak içine almak oldu.