>-----Original Message----- >From: blue.trapez...@gmail.com [mailto:blue.trapez...@gmail.com] On >Behalf Of Vikram Vaswani >Sent: Thursday, December 25, 2008 5:47 AM >To: mysql@lists.mysql.com >Subject: Question on default database for stored functions > >Hi > >According to the MySQL manual, "By default, a routine is associated with >the default database.When the routine is invoked, an implicit USE >db_name is performed (and undone when the routine terminates)" > >However, when I tried accessing a stored routine from another database, >I received an error. Output below: > >mysql> USE test [JS] Stupid question, but do you have a semicolon at the end of the USE statement?
>mysql> DELIMITER // >mysql> CREATE FUNCTION get_area(radius INT) > -> RETURNS FLOAT > -> BEGIN > -> RETURN PI() * radius * radius; > -> END > -> // >Query OK, 0 rows affected (0.13 sec) >mysql> DELIMITER ; >mysql> USE test2 >Database changed >mysql> select get_area(11); >ERROR 1305 (42000): FUNCTION test2.get_area does not exist > >Can someone tell me what I'm doing wrong? Thanks. > >Vikram > >-- >MySQL General Mailing List >For list archives: http://lists.mysql.com/mysql >To unsubscribe: http://lists.mysql.com/mysql?unsub=jschwa...@the- >infoshop.com -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/mysql?unsub=arch...@jab.org