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
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=arch...@jab.org

Reply via email to