MySQL存储过程例子(包含事务,输出参数,嵌套调用)_MySQL
bitsCN.com
drop procedure if exists pro_rep_shadow_rs;
delimiter |
----------------------------------
-- rep_shadow_rs
-- 用来处理信息的增加,更新和删除
-- 每次只更新上次以来没有做过的数据
-- 根据不同的标志位
-- 需要一个输出的参数,
-- 如果返回为0,则调用失败,事务回滚
-- 如果返回为1,调用成功,事务提交
--
-- 测试方法
-- call pro_rep_shadow_rs(@rtn);
-- select @rtn;
----------------------------------
create procedure pro_rep_shadow_rs(out rtn int)
begin
-- 声明变量,所有的声明必须在非声明的语句前面
declare iLast_rep_sync_id int default -1;
declare iMax_rep_sync_id int default -1;
-- 如果出现异常,或自动处理并rollback,但不再通知调用方了
-- 如果希望应用获得异常,需要将下面这一句,以及启动事务和提交事务的语句全部去掉
declare exit handler for sqlexception rollback;
-- 查找上一次的
select eid into iLast_rep_sync_id from rep_de_proc_log where tbl='rep_shadow_rs';
-- 如果不存在,则增加一行
if iLast_rep_sync_id=-1 then
insert into rep_de_proc_log(rid,eid,tbl) values(0,0,'rep_shadow_rs');
set iLast_rep_sync_id = 0;
end if;
-- 下一个数字
set iLast_rep_sync_id=iLast_rep_sync_id+1;
-- 设置默认的返回值为0:失败
set rtn=0;
-- 启动事务
start transaction;
-- 查找最大编号
select max(rep_sync_id) into iMax_rep_sync_id from rep_shadow_rs;
-- 有新数据
if iMax_rep_sync_id>=iLast_rep_sync_id then
-- 调用
call pro_rep_shadow_rs_do(iLast_rep_sync_id,iMax_rep_sync_id);
-- 更新日志
update rep_de_proc_log set rid=iLast_rep_sync_id,eid=iMax_rep_sync_id where tbl='rep_shadow_rs';
end if;
-- 运行没有异常,提交事务
commit;
-- 设置返回值为1
set rtn=1;
end;
delimiter ;
drop procedure if exists pro_rep_shadow_rs_do;
delimiter |
---------------------------------
-- 处理指定编号范围内的数据
-- 需要输入2个参数
-- last_rep_sync_id 是编号的最小值
-- max_rep_sync_id 是编号的最大值
-- 无返回值
---------------------------------
create procedure pro_rep_shadow_rs_do(last_rep_sync_id int, max_rep_sync_id int)
begin
declare iRep_operationtype varchar(1);
declare iRep_status varchar(1);
declare iRep_Sync_id int;
declare iId int;
-- 这个用于处理游标到达最后一行的情况
declare stop int default 0;
-- 声明游标
declare cur cursor for select id,Rep_operationtype,iRep_status,rep_sync_id from rep_shadow_rs where rep_sync_id between last_rep_sync_id and max_rep_sync_id;
-- 声明游标的异常处理,设置一个终止标记
declare CONTINUE HANDLER FOR SQLSTATE '02000' SET stop=1;
-- 打开游标
open cur;
-- 读取一行数据到变量
fetch cur into iId,iRep_operationtype,iRep_status,iRep_Sync_id;
-- 这个就是判断是否游标已经到达了最后
while stop 1 do
-- 各种判断
if iRep_operationtype='I' then
insert into rs0811 (id,fnbm) select id,fnbm from rep_shadow_rs where rep_sync_id=iRep_sync_id;
elseif iRep_operationtype='U' then
begin
if iRep_status='A' then
insert into rs0811 (id,fnbm) select id,fnbm from rep_shadow_rs where rep_sync_id=iRep_sync_id;
elseif iRep_status='B' then
delete from rs0811 where id=iId;
end if;
end;
elseif iRep_operationtype='D' then
delete from rs0811 where id=iId;
end if;
-- 读取下一行的数据
fetch cur into iId,iRep_operationtype,iRep_status,iRep_Sync_id;
end while; -- 循环结束
close cur; -- 关闭游标
end;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

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

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





Dokumen Microsoft Word mengandungi beberapa metadata apabila disimpan. Butiran ini digunakan untuk pengenalan pada dokumen, seperti apabila ia dibuat, siapa pengarangnya, tarikh diubah suai, dsb. Ia juga mempunyai maklumat lain seperti bilangan aksara, bilangan perkataan, bilangan perenggan dan banyak lagi. Jika anda mungkin ingin mengalih keluar pengarang atau maklumat terakhir yang diubah suai atau sebarang maklumat lain supaya orang lain tidak mengetahui nilainya, maka ada caranya. Dalam artikel ini, mari lihat cara mengalih keluar pengarang dokumen dan maklumat terakhir diubah suai. Alih keluar pengarang dan maklumat terakhir diubah suai daripada dokumen Microsoft Word Langkah 1 – Pergi ke

Menggunakan Maklumat Sistem Klik Mula dan masukkan Maklumat Sistem. Hanya klik pada program seperti yang ditunjukkan dalam imej di bawah. Di sini anda boleh menemui kebanyakan maklumat sistem, dan satu perkara yang anda boleh temui ialah maklumat kad grafik. Dalam program Maklumat Sistem, kembangkan Komponen, dan kemudian klik Tunjukkan. Biarkan program mengumpulkan semua maklumat yang diperlukan dan setelah ia siap, anda boleh mencari nama khusus kad grafik dan maklumat lain pada sistem anda. Walaupun anda mempunyai berbilang kad grafik, anda boleh menemui kebanyakan kandungan yang berkaitan dengan kad grafik khusus dan bersepadu yang disambungkan ke komputer anda dari sini. Menggunakan Pengurus Peranti Windows 11 Sama seperti kebanyakan versi Windows yang lain, anda juga boleh mencari kad grafik pada komputer anda daripada Pengurus Peranti. Klik Mula dan kemudian

Dalam iOS 17, terdapat ciri AirDrop baharu yang membolehkan anda bertukar maklumat hubungan dengan seseorang dengan menyentuh dua iPhone. Ia dipanggil NameDrop, dan inilah cara ia berfungsi. Daripada memasukkan nombor orang baharu untuk menghubungi atau menghantar teks kepada mereka, NameDrop membenarkan anda meletakkan iPhone anda berhampiran iPhone mereka untuk bertukar-tukar butiran hubungan supaya mereka mempunyai nombor anda. Meletakkan kedua-dua peranti bersama-sama akan muncul secara automatik antara muka perkongsian kenalan. Mengklik pada pop timbul akan memaparkan maklumat hubungan seseorang dan poster kenalan mereka (anda boleh menyesuaikan dan mengedit foto anda sendiri, juga ciri baharu iOS17). Skrin ini juga termasuk pilihan untuk "Terima Sahaja" atau berkongsi maklumat hubungan anda sendiri sebagai balasan.

Kerja pembinaan semula 3D imej semasa biasanya menggunakan kaedah pembinaan semula stereo berbilang paparan (Stereo Berbilang Pandangan) yang merakam pemandangan sasaran daripada berbilang sudut pandangan (berbilang paparan) di bawah keadaan pencahayaan semula jadi yang berterusan. Walau bagaimanapun, kaedah ini biasanya menganggap permukaan Lambertian dan mengalami kesukaran memulihkan butiran frekuensi tinggi. Satu lagi pendekatan untuk pembinaan semula pemandangan ialah menggunakan imej yang ditangkap dari sudut pandangan tetap tetapi dengan lampu titik yang berbeza. Kaedah Stereo fotometrik, sebagai contoh, ambil persediaan ini dan gunakan maklumat teduhannya untuk membina semula butiran permukaan objek bukan Lambertian. Walau bagaimanapun, kaedah paparan tunggal sedia ada biasanya menggunakan peta biasa atau peta kedalaman untuk mewakili yang boleh dilihat

Dalam iOS17, terdapat ciri AirDrop baharu yang membolehkan anda bertukar maklumat hubungan dengan seseorang dengan menyentuh dua iPhone pada masa yang sama. Ia dipanggil NameDrop, dan inilah cara ia sebenarnya berfungsi. NameDrop menghapuskan keperluan untuk memasukkan nombor orang baharu untuk menelefon atau menghantar mesej kepada mereka supaya mereka mempunyai nombor anda, anda hanya boleh memegang iPhone anda rapat dengan iPhone mereka untuk bertukar maklumat hubungan. Meletakkan kedua-dua peranti bersama-sama akan muncul secara automatik antara muka perkongsian kenalan. Mengklik pada pop timbul akan memaparkan maklumat hubungan seseorang dan poster kenalan mereka (foto anda sendiri yang boleh anda sesuaikan dan edit, juga baharu kepada iOS 17). Skrin ini juga termasuk "Terima Sahaja" atau berkongsi maklumat hubungan anda sendiri sebagai balasan

Sebab kelewatan dalam WeChat menerima maklumat mungkin masalah rangkaian, beban pelayan, masalah versi, masalah peranti, masalah penghantaran mesej atau faktor lain. Pengenalan terperinci: 1. Masalah rangkaian Kelewatan dalam menerima maklumat pada WeChat mungkin berkaitan dengan sambungan rangkaian Jika sambungan rangkaian tidak stabil atau isyarat lemah, ia boleh menyebabkan kelewatan dalam penghantaran maklumat disambungkan ke rangkaian yang stabil dan kekuatan isyarat rangkaian adalah baik ; masa yang sama, dsb.

Apple telah memperkenalkan cara yang sangat pantas (jika bukan yang terpantas) untuk berkongsi maklumat hubungan anda dengan iPhone lain melalui NameDrop. Ini semua yang anda perlu tahu. Apakah NameDrop? iOS 17 memperkenalkan NameDrop, ciri revolusioner yang memanfaatkan poster kenalan. Kad yang diperibadikan ini boleh dibuat untuk diri sendiri dan kenalan lain dan akan muncul apabila anda membuat panggilan. Dengan berbilang pilihan yang boleh disesuaikan seperti foto, Memoji, monogram dan banyak lagi, anda boleh menyesuaikan poster kenalan anda untuk memadankan personaliti anda menggunakan skema warna dan fon pilihan anda. NameDrop berkongsi poster anda secara automatik apabila iPhone anda berada berdekatan dengan pengguna lain, membolehkan kedua-dua pihak dengan mudah

计算机网络中信息的传递是以“字”为单位的;字是数据传送的基本单位。计算机网络有两个主要功能:数据通信和资源共享,而数据通信中传递的信息均以二进制数据形式来表现。数据通信是依照一定的通信协议,利用数据传输技术在两个终端之间传递数据信息的一种通信方式和通信业务。
