MYSQL入门学习之十二:存储过程的基本操作_MySQL
bitsCN.com
MYSQL入门学习之十二:存储过程的基本操作
相关链接:
MYSQL入门学习之一:基本操作
http:///database/201212/173868.html
MYSQL入门学习之二:使用正则表达式搜索
http:///database/201212/173869.html
MYSQL入门学习之三:全文本搜索
http:///database/201212/173873.html
MYSQL入门学习之四:MYSQL的数据类型
http:///database/201212/175536.html
MYSQL入门学习之五:MYSQL的字符集
http:///database/201212/175541.html
MYSQL入门学习之六:MYSQL的运算符
http:///database/201212/175862.html
MYSQL入门学习之七:MYSQL常用函数
http:///database/201212/175864.html
MYSQL入门学习之八:数据库及表的基本操作
http:///database/201212/175867.html
MYSQL入门学习之九:索引的简单操作
http:///database/201212/176772.html
MYSQL入门学习之十:视图的基本操作
http:///database/201212/176775.html
MYSQL入门学习之十一:触发器的基本操作
http:///database/201212/176781.html
存储过程简单来说,就是为以后的使用而保存的一条或多条MySQL语句的集合。可将其视为批文件,虽然它们的作用不仅限于批处理。
使用存储过程需要MySQL5及以后的版本支持。
一、为什么要使用存储过程
通过把处理封闭在容易使用的单元中,简化复杂的操作;
将一系列处理步骤放到同一存储过程中,保证了数据的完整性和操作的安全性;
简化对变更的管理;
提高性能。使用存储过程比使用单独的SQL语句要快;
存在一些只能用在单个请求中的MySQL元素和特性,存储过程可以使用它们来编写功能更强更灵活的代码;
二、基本操作
1、创建存储过程
CREATE PROCEDURE sp_name ([proc_parameter[,...]])
[characteristic ...] routine_body
proc_parameter:
[ IN | OUT | INOUT ] param_name type
示例:
[sql]
mysql>create procedure sp_test()
->begin
-> select userid,username from newname where userid=215;
->end
->//
2、执行存储过程
CALL sp_name;
示例:
[sql]
mysql> call sp_test();
+--------+----------+
| userid | username |
+--------+----------+
| 215 | NULL |
+--------+----------+
3、删除存储过程
DROP PROCEDURE [ IF EXISTS ] sp_name;
示例:
[sql]
mysql> drop procedure if exists sp_test;
4、查看存储过程创建信息
SHOW CREATE PROCEDURE sp_name;
示例:
[sql]
mysql> show create procedure sp_test;
+-----------+----------+--------------------------------------------------------+----------------------+----------------------+--------------------+
| Procedure | sql_mode | Create Procedure | character_set_client | collation_connection | Database Collation |
+-----------+----------+--------------------------------------------------------+----------------------+----------------------+--------------------+
| sp_test | | CREATE DEFINER=`root`@`localhost` PROCEDURE `sp_test`()
begin
select userid,username from newname where userid=215;
end | latin1 | latin1_swedish_ci | latin1_swedish_ci |
+-----------+----------+--------------------------------------------------------+----------------------+----------------------+--------------------+
5、查看存储过程状态
SHOW PROCEDURE STATUS [ LIKE '' ];
示例:
[sql]
mysql> show procedure status like 'sp_test';
+------+---------+-----------+----------------+---------------------+---------------------+---------------+---------+----------------------+-
| Db | Name | Type | Definer | Modified | Created | Security_type | Comment | character_set_client |
+------+---------+-----------+----------------+---------------------+---------------------+---------------+---------+----------------------+-
| test | sp_test | PROCEDURE | root@localhost | 2012-12-17 23:57:38 | 2012-12-17 23:57:38 | DEFINER | | latin1 |
+------+---------+-----------+----------------+---------------------+---------------------+---------------+---------+----------------------+-
6、使用存储过程参数
示例:
[sql]
mysql> delimiter //
mysql> create procedure sp_type_cnt(
-> IN in_type int,
-> OUT out_cnt int
-> )
-> begin
-> select count(*)
-> from newname
-> where type = in_type
-> into out_cnt;
-> end;
-> //
mysql> delimiter ;
mysql> call sp_type_cnt(0,@cnt);
mysql> select @cnt;
+------+
| @cnt |
+------+
| 159 |
+------+
bitsCN.com

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Penyelesaian kepada ralat pangkalan data discuz ialah: 1. Semak konfigurasi pangkalan data 2. Pastikan pelayan pangkalan data sedang berjalan 3. Semak status jadual pangkalan data 5. Kosongkan cache; ; 7. Semak sumber pelayan 8. Hubungi sokongan rasmi Discuz. Menyelesaikan ralat pangkalan data Discuz memerlukan bermula dari pelbagai aspek, mengenal pasti punca masalah secara beransur-ansur, dan mengambil langkah yang sepadan untuk membaikinya.

IntelArrowLake dijangka akan dibebaskan pada seni bina pemproses yang sama sebagai LunarLake, yang bermaksud bahawa teras prestasi LionCoveIntel yang baru akan digabungkan dengan teras kecekapan Skymonte yang ekonomi.

Bagaimana untuk menyelesaikan ralat MySQL: Tidak dapat memadam pangkalan data, pangkalan data tidak wujud Gambaran Keseluruhan: MySQL ialah sistem pengurusan pangkalan data hubungan yang biasa digunakan. Apabila menggunakan MySQL, kita selalunya perlu mengurus pangkalan data, termasuk mencipta pangkalan data, memadam pangkalan data dan operasi lain. Walau bagaimanapun, apabila memadam pangkalan data, kadangkala anda akan menemui mesej ralat "Can'tdropdatabase'database_name';databasedoes'texist", iaitu, anda tidak boleh memadamkannya.

Python, sebagai bahasa pengaturcaraan peringkat tinggi, mudah dipelajari dan digunakan. Sebaik sahaja anda perlu menulis program Python, anda pasti akan menghadapi ralat sintaks, dan ralat sintaks ungkapan adalah perkara biasa. Dalam artikel ini, kita akan membincangkan cara menyelesaikan ralat sintaks ungkapan dalam Python. Ralat sintaks ungkapan adalah salah satu ralat yang paling biasa dalam Python, dan ia biasanya disebabkan oleh penggunaan sintaks yang salah atau kehilangan komponen yang diperlukan. Dalam Python, ungkapan biasanya terdiri daripada nombor, rentetan, pembolehubah dan pengendali. paling biasa

Dalam C atau C++, koma "," mempunyai kegunaan yang berbeza. Di sini kita akan belajar cara menggunakannya. Koma sebagai pengendali. Operator koma ialah operator binari yang menilai operan pertama, membuang hasilnya, kemudian menilai operan kedua dan mengembalikan nilai. Operator koma mempunyai keutamaan terendah dalam C atau C++. Contoh #include<stdio.h>intmain(){ intx=(50,60); inty=(func1(),func2());} Di sini 60 akan diberikan kepada x. Untuk pernyataan seterusnya, func1( akan dilaksanakan terlebih dahulu

Pengenalan kepada cara menulis ungkapan fungsi eksponen dalam bahasa C dan contoh kod Apakah fungsi eksponen Fungsi eksponen ialah jenis fungsi yang biasa dalam matematik Ia boleh dinyatakan dalam bentuk f(x)=a^x, di mana a ialah asas dan x ialah eksponen. Fungsi eksponen digunakan terutamanya untuk menggambarkan pertumbuhan eksponen atau pereputan eksponen. Contoh kod fungsi eksponen Dalam bahasa C, kita boleh menggunakan fungsi pow() dalam perpustakaan matematik untuk mengira fungsi eksponen Berikut ialah contoh program: #include

Ungkapan Lambda di Jawa Dengan keluaran Java 8, ungkapan lambda telah menjadi salah satu topik yang paling membimbangkan dan dibincangkan di kalangan pembangun Java. Ungkapan Lambda boleh memudahkan kaedah penulisan pengaturcara Java yang membosankan, dan juga boleh meningkatkan kebolehbacaan dan kebolehselenggaraan program. Dalam artikel ini, kami akan mendalami ungkapan lambda dalam Java dan cara ia memberikan pengalaman pengaturcaraan yang lebih mudah dan intuitif dalam kod Java.

Ungkapan lambda ialah fungsi tanpa nama yang boleh digunakan dengan mudah untuk mengulang koleksi. Dalam artikel ini, kami akan memperkenalkan cara menggunakan ungkapan lambda untuk mengulang koleksi dan memberikan contoh kod khusus. Dalam Python, format sintaks ungkapan lambda adalah seperti berikut: senarai parameter lambda: Senarai parameter ungkapan lambda ungkapan boleh mengandungi satu atau lebih parameter, dipisahkan dengan koma. Ungkapan ialah nilai pulangan bagi fungsi lambda. Mari kita lihat contoh mudah di bawah, dengan andaian
