国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

數(shù)據(jù)庫實驗 | 第5關:使用游標的存儲過程

這篇具有很好參考價值的文章主要介紹了數(shù)據(jù)庫實驗 | 第5關:使用游標的存儲過程。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

任務描述

本關任務:
jdxx數(shù)據(jù)表有四個字段,分別是省份(sf)、城市(cs)、區(qū)縣(qxmc)、街道(name)。
例如,查詢天心區(qū)(qxmc)的所有字段的值結果如圖所示
數(shù)據(jù)庫實驗 | 第5關:使用游標的存儲過程

任務要求

建立存儲過程
tjdq(in sf varchar(10))
輸入省份的名稱,將該省份所有城市的所有地區(qū)的
鄉(xiāng)x、鎮(zhèn)z和街道jd和其他的個數(shù)插入到數(shù)據(jù)表dqtj中。
dqtj數(shù)據(jù)表已經(jīng)建立在數(shù)據(jù)庫中,有城市(cs),區(qū)縣名稱(qxmc)、縣(x)、街道(jd)、鎮(zhèn)(z)、其他(qt)六個字段。分別存儲指定省份的城市、區(qū)縣名稱和縣、街道、鎮(zhèn)、其他的個數(shù)。
以湖南省為參數(shù),調用tjdq過程后
dqtj數(shù)據(jù)表部分數(shù)據(jù)如圖所示
數(shù)據(jù)庫實驗 | 第5關:使用游標的存儲過程
調用過程
以安徽省為參數(shù),調用過程

提示:該過程先要刪除dqtj數(shù)據(jù)表的所有數(shù)據(jù)
然后將指定省份的城市和區(qū)縣的唯一信息值存入游標
然后將游標的各條信息依次取出循環(huán),根據(jù)游標中的城市和區(qū)縣名稱,在jdxx數(shù)據(jù)表查出對應的鄉(xiāng)、街道、鎮(zhèn)和其他的個數(shù),然后插入到dqtj數(shù)據(jù)表。


相關知識

聲明游標

命令格式:

DECLARE   游標名  CURSOR FOR   select語句

打開和關閉游標

命令格式:

open 游標名  
close 游標名  

讀取游標信息

命令格式:

FETCH  游標名  INTO var1,var2[,]  

將游標聲明時的查詢結果逐條存放在變量中
每執(zhí)行一次fetch將指針指向下一條結果
變量必須在聲明游標前定義

遍歷游標

數(shù)據(jù)庫實驗 | 第5關:使用游標的存儲過程文章來源地址http://www.zghlxwxcb.cn/news/detail-422114.html


代碼

use province;
#代碼開始
delimiter $$
create procedure tjdq(in sm varchar(10))
begin
    declare flag int default 1;
    declare city varchar(10);
    declare qx varchar(10);
    declare jd int;
    declare x int;
    declare z int;
    declare qt int;
    declare dq cursor for select distinct cs, qxmc from jdxx where sf = sm;
    declare continue handler for not found set flag = 0;
    delete from dqtj;
    open dq;
        fetch dq into city, qx;
        while flag = 1 do
            select count(*) from jdxx where cs = city and qxmc = qx and name like "%街道" into jd;
            select count(*) from jdxx where cs = city and qxmc = qx and name like "%鄉(xiāng)" into x;
            select count(*) from jdxx where cs = city and qxmc = qx and name like "%鎮(zhèn)" into z;
            select count(*) from jdxx where cs = city and qxmc = qx and name not like "%鎮(zhèn)" and name not like "%街道" and name not like "%鄉(xiāng)" into qt;
            insert into dqtj values(city, qx, x, jd, z, qt);
            fetch dq into city, qx;
        end while;
    close dq;
end $$
delimiter ;
call tjdq("安徽省");
#代碼結束
select * from dqtj;

到了這里,關于數(shù)據(jù)庫實驗 | 第5關:使用游標的存儲過程的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • SQL server數(shù)據(jù)庫簡單的使用存儲過程

    SQL server數(shù)據(jù)庫簡單的使用存儲過程,入門級別 ?--刪除存儲過程 --drop proc AddProc--此為存儲過程的名字 --go ?--創(chuàng)建存儲過程 create proc AddProc--此為存儲過程的名字,前面帶#的為臨時的存儲過程 @str nvarchar(10)--可選參數(shù),如果沒有參數(shù) as 可不用寫 as? declare @n int --存儲過程內部需

    2024年02月06日
    瀏覽(105)
  • SQL Server存儲過程(數(shù)據(jù)庫引擎)使用詳解

    SQL Server存儲過程(數(shù)據(jù)庫引擎)使用詳解

    SQL Server 中的存儲過程是一組一個或多個 Transact-SQL 語句的引用。過程類似于其他編程語言中的構造,因為它們可以: 接受輸入?yún)?shù)并以輸出參數(shù)的形式向調用程序返回多個值。 包含在數(shù)據(jù)庫中執(zhí)行操作的編程語句。其中包括調用其他過程。 向調用程序返回狀態(tài)值,以指示成

    2023年04月09日
    瀏覽(17)
  • 使用MySQL存儲過程提高數(shù)據(jù)庫效率和可維護性

    使用MySQL存儲過程提高數(shù)據(jù)庫效率和可維護性

    MySQL 存儲過程是一種強大的數(shù)據(jù)庫功能,它允許你在數(shù)據(jù)庫中存儲和執(zhí)行一組SQL語句,類似于編程中的函數(shù)。存儲過程可以大幅提高數(shù)據(jù)庫的性能、安全性和可維護性。本文將詳細介紹MySQL存儲過程的使用。 MySQL存儲過程是一組預編譯的SQL語句,它們以一個名稱存儲在數(shù)據(jù)庫

    2024年02月08日
    瀏覽(22)
  • 【100天精通python】Day31:使用python操作數(shù)據(jù)庫_數(shù)據(jù)庫編程接口,連接對象和游標對象,數(shù)據(jù)庫連接配置

    目錄 ?專欄導讀? 一、數(shù)據(jù)庫編程接口 1. Python標準庫接口 2. MySQL Connector/Python接口

    2024年02月13日
    瀏覽(26)
  • 數(shù)據(jù)庫: 存儲過程

    sql server begin end用法: SQL Server中的BEGIN END用法是用于定義一個代碼塊,這個代碼塊可以包含多個SQL語句,BEGIN END通常用于控制流程語句,例如IF語句、WHILE語句、TRY CATCH語句等。在BEGIN END代碼塊中,可以使用變量、函數(shù)、存儲過程等SQL Server的元素。BEGINEND的語法如下: BEGIN SQL語

    2024年02月09日
    瀏覽(23)
  • 數(shù)據(jù)庫(MySQL)的存儲過程

    數(shù)據(jù)庫(MySQL)的存儲過程

    存儲過程是事先經(jīng)過編譯并存儲在數(shù)據(jù)庫中的一段SQL 語句的集合,調用存儲過程可以簡化應用開發(fā)人員的很多工作,減少數(shù)據(jù)在數(shù)據(jù)庫和應用服務器之間的傳輸,對于提高數(shù)據(jù)處理的效率是有好處的。 存儲過程思想上很簡單,就是數(shù)據(jù)庫SQL 語言層面的代碼封裝與重用。 特點

    2024年02月10日
    瀏覽(37)
  • Oracle數(shù)據(jù)庫創(chuàng)建存儲過程

    下面是一個遷移數(shù)據(jù)庫數(shù)據(jù)的存儲過程: 存儲過程中用到的 while 循環(huán)邏輯: ?

    2024年02月11日
    瀏覽(20)
  • 【MySQL 數(shù)據(jù)庫】9、存儲過程

    【MySQL 數(shù)據(jù)庫】9、存儲過程

    ?? 存儲過程是事先經(jīng)過編譯并存儲在數(shù)據(jù)庫中的 SQL 語句的集合,調用存儲過程可以簡化應用開發(fā)人員的很多工作,減少數(shù)據(jù)在數(shù)據(jù)庫和應用服務器之間的傳輸,可以提高數(shù)據(jù)處理效率 ?? 存儲過程思想上很簡單:就是數(shù)據(jù)庫 SQL 語言層面的代碼封裝與重用 ?? 【封裝,復用

    2024年02月08日
    瀏覽(32)
  • 進階數(shù)據(jù)庫系列(十一):PostgreSQL 存儲過程

    進階數(shù)據(jù)庫系列(十一):PostgreSQL 存儲過程

    前面介紹了?PostgreSQL 數(shù)據(jù)類型和運算符、常用函數(shù)、鎖操作、執(zhí)行計劃、視圖與觸發(fā)器相關的知識點,今天我將詳細的為大家介紹?PostgreSQL 存儲過程相關知識,希望大家能夠從中收獲多多!如有幫助,請點在看、轉發(fā)支持一波!?。?工作中可能會存在業(yè)務比較復雜,重復性

    2024年02月03日
    瀏覽(21)
  • MySQL數(shù)據(jù)庫中的存儲過程以及存儲函數(shù)練習

    ?字段名? ? ?? 數(shù)據(jù)類型? ? ? ?主鍵?? ?外鍵?? ?非空 ? 唯一? ? 自增 ?? ???id? ? ? ? ? ? ?INT? ? ? ? ? ? ? ?是 ?? ? 否 ?? ? ?是? ? ? ?是? ? ? ? ? ?否 ?? name?? ?VARCHAR(50)? ?否 ?? ? 否 ?? ? ?是? ? ? ?否? ? ? ? ? ?否 ???glass ? VARCHAR(50)? ? ?否 ??

    2024年02月15日
    瀏覽(22)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包