Maison > développement back-end > tutoriel php > Comment utiliser les déclencheurs MySQL en PHP ?

Comment utiliser les déclencheurs MySQL en PHP ?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Libérer: 2024-05-31 10:32:11
original
628 Les gens l'ont consulté

L'utilisation des déclencheurs MySQL en PHP nécessite : Création d'un déclencheur : Utilisez l'instruction SQL CREATE TRIGGER pour créer un déclencheur dans la base de données. Déclenchez un déclencheur : utilisez la fonction mysqli_query() pour exécuter un déclencheur. Application pratique : utilisez les déclencheurs MySQL en PHP pour garantir l'intégrité des données, par exemple en émettant des messages d'erreur lors de la tentative de mise à jour de valeurs négatives.

如何在 PHP 中使用 MySQL 触发器?

Comment utiliser les déclencheurs MySQL en PHP

Un déclencheur MySQL est un objet de base de données qui effectue automatiquement une série d'actions lorsque certaines conditions sont remplies. Les déclencheurs sont généralement utilisés pour maintenir l'intégrité des données dans une base de données ou pour effectuer d'autres tâches automatisées.

Création de déclencheurs

Pour utiliser des déclencheurs en PHP, la première étape consiste à les créer dans la base de données. Un déclencheur peut être créé avec l'instruction SQL suivante :

CREATE TRIGGER trigger_name
BEFORE/AFTER INSERT/UPDATE/DELETE ON table_name
FOR EACH ROW
BEGIN
  -- 要执行的语句
END
Copier après la connexion

Par exemple, créons un déclencheur qui insère l'heure actuelle lorsqu'une nouvelle ligne est insérée dans la table users : users 表中插入新行时插入当前时间的触发器:

CREATE TRIGGER insert_timestamp
BEFORE INSERT ON users
FOR EACH ROW
BEGIN
  SET NEW.created_at = NOW();
END
Copier après la connexion

使用 PHP 触发触发器

创建触发器后,可以使用 PHP 触发它们。可以通过 mysqli_query() 函数执行触发器:

<?php
$mysqli = new mysqli("localhost", "username", "password", "database");

$mysqli->query("INSERT INTO users (name, email) VALUES ('John Doe', 'john.doe@example.com')");
?>
Copier après la connexion

当执行此代码时,将触发 insert_timestamp 触发器,并在 users

<?php
$mysqli = new mysqli("localhost", "username", "password", "database");

$mysqli->query("CREATE TRIGGER update_balance
BEFORE UPDATE ON accounts
FOR EACH ROW
BEGIN
  IF NEW.balance < 0 THEN
    SIGNAL SQLSTATE '45000'
      SET MESSAGE_TEXT = '余额不能为负值';
  END IF;
END
");

$mysqli->query("UPDATE accounts SET balance = -100 WHERE id = 1");
?>
Copier après la connexion

Déclencher un déclencher en utilisant PHP

Après avoir créé des déclencheurs, vous pouvez les déclencher en utilisant PHP. Les déclencheurs peuvent être exécutés via la fonction mysqli_query() :

rrreee

Lorsque ce code est exécuté, le déclencheur insert_timestamp sera déclenché et affiché dans le utilisateurs code> table Insère l'heure actuelle lors de l'insertion d'une nouvelle ligne. <p></p>🎜Un exemple pratique🎜🎜🎜Voici un exemple pratique d'utilisation des déclencheurs MySQL en PHP : 🎜rrreee🎜Cet exemple montre comment utiliser des déclencheurs en PHP pour renforcer l'intégrité des données lorsque vous essayez de mettre à jour le solde d'un compte vers une valeur négative. 🎜

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers numéros
MySQL arrête le processus
Depuis 1970-01-01 08:00:00
0
0
0
Env中mysql
Depuis 1970-01-01 08:00:00
0
0
0
Erreur lors de l'installation de MySQL sous Linux
Depuis 1970-01-01 08:00:00
0
0
0
php - problème de surveillance MySQL
Depuis 1970-01-01 08:00:00
0
0
0
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal