1

SP2 から SP1 を呼び出したい。SP1 は、同じ PC 上の別のデータベース スキーマに格納されます。次のスニペットを確認してください

    CREATE DEFINER=`root`@`localhost`  PROCEDURE `db2`.`sp2_procedure` ()
BEGIN
    call sp1_procedure(50);
END

また試してみcall db1.sp1_procedure(50); ました私は間違って呼んでいますか、それとも他のスキーマのSPを呼び出すことはできません

注:: SP - ストアド プロシージャ

4

1 に答える 1

2

これは簡単に行うことができます。プレフィックスにスキーマ名を記載するだけです。

例えば ​​:

CREATE DEFINER=`root`@`localhost` PROCEDURE `db1`.`sp1`()
BEGIN
select 'I am procedure from another db';
END

次、

CREATE DEFINER=`root`@`localhost` PROCEDURE `db2`.`sp2`()
BEGIN
call db1.sp1();
END

そして、それを次のように呼び出します:

use db2;
call `db2`.sp2();
于 2013-08-16T12:56:48.890 に答える