簡體   English   中英

將參數傳遞給存儲過程MySql

[英]Passing arguments to stored procedures MySql

我已經在數據庫中使用IN參數創建了過程(MySql-> Routines-> Create Procedure)。 我正在用它來創建一個新的數據庫。 當我調用過程並傳遞參數時,將創建新數據庫,但新數據庫的名稱是我在過程中使用的變量的名稱,而不是我作為參數傳遞的名稱。

創建過程dbCreate(IN dbName VARCHAR(255))

開始

  CREATE DATABASE IF NOT EXISTS dbName COLLATE utf8_bin; CREATE TABLE IF NOT EXISTS dbName.City( . . . ); 

當我調用dbCreate過程時,

使用old_database;

呼叫old_database.dbCreate('FRANCE');

MySql生成名為dbName的新數據庫。

將您的語句構造為字符串:

SET @s = CONCAT('USE old_database; CALL old_database.dbCreate(', dbName,');');
PREPARE stmt FROM @s;
EXECUTE stmt;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM