List:General Discussion« Previous MessageNext Message »
From:Jerry Schwartz Date:December 26 2008 6:24pm
Subject:RE: Question on default database for stored functions
View as plain text  

>-----Original Message-----
>From: blue.trapezius@stripped [mailto:blue.trapezius@stripped] On
>Behalf Of Vikram Vaswani
>Sent: Thursday, December 25, 2008 5:47 AM
>To: mysql@stripped
>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=1
>infoshop.com




Thread
Question on default database for stored functionsVikram Vaswani25 Dec
  • RE: Question on default database for stored functionsJerry Schwartz26 Dec
    • Re: Question on default database for stored functionsPeter Brawley26 Dec