Maison  >  Article  >  base de données  >  Résumer l'utilisation et l'explication des paramètres de procédure stockée MySQL

Résumer l'utilisation et l'explication des paramètres de procédure stockée MySQL

WBOY
WBOYavant
2022-08-18 17:53:232141parcourir

Cet article vous apporte des connaissances pertinentes sur mysql Il présente principalement l'utilisation et la description des paramètres de procédure stockée MySQL. Il existe trois types de paramètres pour les procédures stockées MySQL : IN, OUT et INOUT. . J'espère que cela aidera tout le monde.

Résumer l'utilisation et l'explication des paramètres de procédure stockée MySQL

Apprentissage recommandé : Tutoriel vidéo MySQL

Paramètres des procédures stockées MySQL

Il existe trois types de paramètres pour les procédures stockées MySQL :

  • ININ
  • OUT 
  • INOUT
  • OUT code>

INOUT

  • Paramètres d'entrée
Paramètres d'entrée (IN) :

Paramètres qui transmettent des données à la procédure stockée lors de l'appel de la procédure stockée (la procédure stockée appelée doit avoir valeurs réelles (Variables ou valeurs littérales)Remarque sur les détails : la création de procédure stockée suivante signalera une erreur. Son type et sa longueur de type

doivent être cohérents avec le type et la longueur de type du

champ de table

-- 创建一个存储过程:添加一个员工信息
DELIMITER $$
CREATE PROCEDURE procedure_test4(IN `p_name` VARCHAR,IN `p_call` VARCHAR)
BEGIN
  INSERT INTO employees(`name`,`call`)
  VALUES(`p_name`,`p_call`);
END $$
créé.

Résumer lutilisation et lexplication des paramètres de procédure stockée MySQLÉcriture correcte

-- 创建一个存储过程:添加一个员工信息
DELIMITER $$
CREATE PROCEDURE procedure_test4(IN `p_name` VARCHAR(64),IN `p_call` VARCHAR(64))
BEGIN
  INSERT INTO employees(`name`,`call`)
  VALUES(`p_name`,`p_call`);
END $$

Résumer lutilisation et lexplication des paramètres de procédure stockée MySQL

Maintenant, testons si nous pouvons appeler la procédure stockée et y ajouter des données

Résumer lutilisation et lexplication des paramètres de procédure stockée MySQLRegardons d'abord les données originales de la table

C tout la procédure stockéeRésumer lutilisation et lexplication des paramètres de procédure stockée MySQL

CALL procedure_test4('李四','321321')

Regardons à nouveau les résultatsRésumer lutilisation et lexplication des paramètres de procédure stockée MySQL

  • Paramètres de sortie
Paramètres de sortie (OUT):

Renvoie les données générées dans la procédure stockée à l'appelant, ce qui équivaut à la valeur de retour de la méthode Java, mais la différence est qu'il s'agit d'une procédure stockée. Il peut y avoir plusieurs paramètres de sortie

Exemple :

-- 创建一个存储过程:根据id查询出该员工姓名
DELIMITER $$
CREATE PROCEDURE procedure_test5(IN `p_id` INT(64),OUT `p_name` VARCHAR(64))
BEGIN
  SELECT `name` INTO `p_name` FROM employees WHERE id=`p_id`;
END $$

Aucun problème pour créer, puis appeler et tester

SET @e_name=''
CALL procedure_test5('2',@e_name)
SELECT @e_name FROM DUAL

Paramètres d'entrée et de sortie (INOUT)

-- INOUT(输入输出参数)
DELIMITER $$
CREATE PROCEDURE procedure_test6(INOUT str VARCHAR(64))
BEGIN
  -- 把你传进来的值作为条件,查询出的结果再重新赋值给 str 返回出去
  -- 这里的 str 既当输入参数,也当输出参数
  SELECT `name` INTO str FROM employees WHERE id=str;
END $$

Aucun problème de création, Ensuite, testez-le

SET @e_name='2'
CALL procedure_test6(@e_name)
SELECT @e_name FROM DUAL

et ce n'est pas un problème, mais en développement réel, il est recommandé d'utiliser INOUT avec parcimonie. Raison : la lisibilité du code deviendra moins bonne

Apprentissage recommandé : 🎜Tutoriel vidéo mysql🎜🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer