Heim > Backend-Entwicklung > PHP-Problem > Wie rufe ich eine gespeicherte Funktion in PHP auf? Eine gespeicherte Prozedur aufrufen? Was ist der Auslöser?

Wie rufe ich eine gespeicherte Funktion in PHP auf? Eine gespeicherte Prozedur aufrufen? Was ist der Auslöser?

慕斯
Freigeben: 2023-03-10 22:48:01
Original
1829 Leute haben es durchsucht

Wir haben so viel über PHP gelernt, aber ich weiß nicht, wie man gespeicherte Funktionen in PHP aufruft? Eine gespeicherte Prozedur aufrufen? Was ist der Auslöser? Beherrschen Sie es vollständig? Wenn nicht, folgen Sie diesem Artikel, um weiter zu lernen

Verwandte Empfehlungen:Was sind die Verwendungen von is, between, in und anderen Operatoren in PHP?

Anweisungen zur Verwendung gespeicherter Funktionen oder gespeicherter Prozeduren in PHP

//Gespeicherte Funktionen aufrufen:

$v1= $_POST["a];sv2 = $_POST["b];
$sq1 = "insert into tab1 (id, f2, f3)values ( null,nowO. fumnc1(Sv1 , $v2) )":$result= mysql_query($sql);
Nach dem Login kopieren

//Gespeicherte Prozeduren aufrufen:

$v1 = $_POST[ "usemame"];$v2=$_POST["pass"];sv3= $_POST["age"];
$sql ="callinsert_user(Sv1,$v2,$v3 ); ";llinsert_user)是一个存储过程,带3个参数,会将该3个参数数据写入<insert〉某个表中。
Sresult = mysql_queryO;
Nach dem Login kopieren

Eine weitere Methode, die gespeicherte Prozeduren verwendet, um Ergebnismengen zurückzugeben Beispiel

$sql m"call Get_User_iInfo( sid )“;//Get_User_info)是一个存储过程,其中会返回某个指定id 的用户信息$result = mysql_query(ssql);
Nach dem Login kopieren

Was Sie hier erhalten, ist die „Ergebnismenge“

Trigger (Trigger)

Bedeutung:

Trigger ist auch ein Stück vordefinierten Programmiercode〈Gleich wie gespeicherte Prozeduren und gespeicherte Funktionen〉, und hat einen Namen. Aber: Es kann nicht aufgerufen werden, aber wenn ein Ereignis (Hinzufügen, Löschen, Ändern) in einer bestimmten Tabelle auftritt, wird es automatisch „ausgelöst“ und aufgerufen.

create trigger触发器名︰触发时机触发事件on表名foreach rowasbegin
//这里,才是编程的位置,也就是触发器的内部语句end3
Nach dem Login kopieren
Anweisungen:

1. Es gibt nur 2 auslösende Zeitpunkte: vorher《vor....), nach》  ﹔2. Es gibt nur 3 auslösende Ereignisse: Einfügen, Aktualisieren, Löschen

2.Trigger Es gibt nur 3 Ereignisse: Einfügen, Aktualisieren, delete

3, das heißt, die Bedeutung von Trigger ist: Vor (oder nach) dem Einfügen (oder Aktualisieren oder Löschen) in eine bestimmte Tabelle wird der darin geschriebene Code ausgeführt (Anweisung). Es gibt nur 6 Situationen, in denen jede Tabelle diesen Auslöser aufrufen kann.

4. Normalerweise werden Auslöser beim Hinzufügen, Löschen oder Ändern einer Tabelle verwendet und müssen gleichzeitig eine andere Aufgabe ausführen. 5. Im Auslöser gibt es zwei Schlüsselwörter, die eine bestimmte Bedeutung darstellen und zum Abrufen von Daten verwendet werden können:

neu:

Es stellt die „neuen“ Daten dar, wenn die Einfügeaktualisierung gerade ausgeführt wird. Dadurch können Sie den Wert abrufen eines beliebigen Felds dieser neuen Datenzeile in der Form:

set@v1 = new.id;
Nach dem Login kopieren

//Erhalten Sie den Wert des ID-Felds der neu eingefügten oder aktualisierten Zeile (vorausgesetzt, die ID existiert)

set@v2 = new.age;//同上,
Nach dem Login kopieren

old:

Es stellt die dar „alte Zeilen“-Daten, wenn der Löschvorgang gerade ausgeführt wird, können Sie den Wert jedes Feldes dieser alten Zeilendaten in der Form abrufen:

set @v1 = old.id:I
Nach dem Login kopieren

Erhalten Sie die neu eingefügten oder den Wert des ID-Felds in der Aktualisierung Zeile (vorausgesetzt, die ID existiert)

set @v2 = old.age;//同上;
Nach dem Login kopieren

#Löschen Sie zuerst alle Daten in tab_int_max:

delete from tab_int_max1;
Nach dem Login kopieren

#Erhalten Sie den Maximalwert des f1-Felds in tab_int und speichern Sie ihn in der Variablen @maxf. Wählen Sie max(f1) in @maxf1 aus tab_int;

#Nehmen Sie dann basierend auf dem erhaltenen Maximalwert des f1-Felds als Bedingung die Werte der drei Felder heraus:

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;
Nach dem Login kopieren
Empfohlenes Lernen:

php-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWie rufe ich eine gespeicherte Funktion in PHP auf? Eine gespeicherte Prozedur aufrufen? Was ist der Auslöser?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage