Nous avons tellement appris sur PHP, mais je ne sais pas comment appeler les fonctions stockées en PHP ? Appeler une procédure stockée ? Quel est le déclencheur ? L'avez-vous parfaitement maîtrisé ? Sinon, suivez cet article pour continuer à apprendre
Recommandations associées : Quelles sont les utilisations de is, between, in et d'autres opérateurs en PHP ?
Instructions pour utiliser les fonctions stockées ou les procédures stockées en php
//Appeler les fonctions stockées :
$v1= $_POST["a];sv2 = $_POST["b]; $sq1 = "insert into tab1 (id, f2, f3)values ( null,nowO. fumnc1(Sv1 , $v2) )":$result= mysql_query($sql);
//Appel d'une procédure stockée :
$v1 = $_POST[ "usemame"];$v2=$_POST["pass"];sv3= $_POST["age"]; $sql ="callinsert_user(Sv1,$v2,$v3 ); ";llinsert_user)是一个存储过程,带3个参数,会将该3个参数数据写入<insert〉某个表中。 Sresult = mysql_queryO;
Un autre exemple d'utilisation d'une procédure stockée pour renvoyer un ensemble de résultats
$sql m"call Get_User_iInfo( sid )“;//Get_User_info)是一个存储过程,其中会返回某个指定id 的用户信息$result = mysql_query(ssql);
Ce que vous obtenez ici est le "ensemble de résultats"
Trigger (trigger)
Signification :
Trigger est également un code de programmation prédéfini 〈 Identique aux procédures stockées et aux fonctions stockées〉, et a un nom. Mais : il ne peut pas être appelé, mais lorsqu'un événement (ajout, suppression, modification) se produit dans une certaine table, il sera automatiquement "déclenché" et appelé
Formulaire de définition : <. 🎜>
create trigger触发器名︰触发时机触发事件on表名foreach rowasbegin //这里,才是编程的位置,也就是触发器的内部语句end3
Explication :
1, il n'y a que 2 instants de déclenchement : avant《avant...), après》 ﹔2 Il n'y a que 3 événements déclencheurs : insérer. , mettre à jour, supprimer2. Il n'y a que 3 événements déclencheurs : insérer, mettre à jour, supprimer3, c'est-à-dire que la signification du déclencheur est : Avant (ou après) insertion (ou mise à jour , ou delete) sur une certaine table, le code (instruction) qui y est écrit sera exécuté ; c'est-à-dire qu'il n'y a que 6 situations dans lesquelles chaque table peut appeler ce déclencheur,4. utilisé lors de l'ajout, de la suppression ou de la modification d'une table et que vous devez faire autre chose en même temps ; 5. À l'intérieur du déclencheur, il y a deux mots-clés représentant une sorte de Pour une signification spécifique, vous pouvez utiliser pour obtenir des données ∶
nouveau :
Il représente les données de la "nouvelle ligne" lorsque la mise à jour d'insertion est en cours d'exécution grâce à elle, vous pouvez obtenir la valeur de n'importe quel champ de cette nouvelle ligne de données ; sous la forme :set@v1 = new.id;
set@v2 = new.age;//同上,
set @v1 = old.id:I
set @v2 = old.age;//同上;
delete from tab_int_max1;
select f2 into @v2 from tab_int where f1 = @maxf1; select f3 into @v3 from tab_int _ where f1 = @maxf1;#然后,将@maxf1,@v2,@v3插入到表tab_int_max1 insert into tab_int_max1 (f1,f2,f3)values( @maxf1,@v2,@v3);end; #再建一个触发器,在表tab_int进行insert之前,将该行数据#也同时插入到一个跟其类似结果的表(tab_int_some)中 :CREATE TABLE tab_int_some ( id int(11) DEFAULT NULL,age tinyint(4) DEFAULT NULL); create trigger copy_data before insert on tab_int for each rowbegin set @v1 = new.f1; #获得新行的字段f1的值; set @v2 = new.f2;#获得新行的字段f2的值; insert into tab_int_some(id,age)values(@v1,@v2);end;
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!