程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> mysql存儲過程語句

mysql存儲過程語句

編輯:MySQL綜合教程

  001 set @Prov_Code:=32; 002 set @Prov_Name="省廳"; 003 set @Area_Code:=3201; 004 set @Area_Name="市局"; 005  www.2cto.com     006   007 SET FOREIGN_KEY_CHECKS=0; 008 -- ---------------------------- 009 -- Table structure for `AlertInfo` 010 -- ---------------------------- 011 DROP TABLE IF EXISTS `AlertInfo`; 012 CREATE TABLE `AlertInfo` ( 013   `AlertID` bigint(20) NOT NULL auto_increment COMMENT '唯一、非空、自增、主鍵', 014   `DeviceID` bigint(20) default NULL COMMENT '告警設備的安裝單位的單位編號', 015  www.2cto.com     `LineIDOnDevice` bigint(20) default NULL COMMENT '該線路在錄音設備上的線路編號', 016   `AlertDate` datetime default NULL COMMENT '告警日期,僅日期有效,時間為00:00:00', 017   `AllCallCount` int(10) default NULL COMMENT '當天總通話次數', 018   `TimeOutCount` int(10) default NULL COMMENT '當天通話超時次數', 019   `LineLostCount` int(10) default NULL COMMENT '當前斷線次數', 020   `ComfirmAlert` tinyint(4) default '0' COMMENT '告警是否已經確認', 021   PRIMARY KEY  (`AlertID`) 022 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='告警信息表'; 023   024 -- ---------------------------- 025 -- Records of AlertInfo 026 -- ---------------------------- 027   028 -- ---------------------------- 029 -- Table structure for `DepartDescInfo` 030 -- ---------------------------- 031 DROP TABLE IF EXISTS `DepartDescInfo`; 032 CREATE TABLE `DepartDescInfo` ( 033   `DepartClass` bigint(20) NOT NULL COMMENT '單位級別', 034   `DepartDesc` varchar(50) default NULL COMMENT '單位級別描述', 035   PRIMARY KEY  (`DepartClass`) 036 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='部門級別名稱描述信息表'; 037   038 -- ---------------------------- 039 -- Records of DepartDescInfo 040 -- ---------------------------- 041  www.2cto.com   INSERT INTO DepartDescInfo VALUES ('1', '市局'); 042 INSERT INTO DepartDescInfo VALUES ('2', '區分局'); 043 INSERT INTO DepartDescInfo VALUES ('3', '派出所'); 044   045 -- ---------------------------- 046 -- Table structure for `DepartInfo` 047 -- ---------------------------- 048 DROP TABLE IF EXISTS `DepartInfo`; 049 CREATE TABLE `DepartInfo` ( 050   `DepartID` bigint(20) NOT NULL COMMENT '單位編號', 051   `DepartName` varchar(50) default NULL COMMENT '單位名稱', 052   PRIMARY KEY  (`DepartID`) 053 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='部門信息表'; 054   055 -- ---------------------------- 056 -- Records of DepartInfo 057 -- ---------------------------- 058 INSERT INTO DepartInfo VALUES (concat(@Prov_Code,'000000'),@Prov_Name); 059 INSERT INTO DepartInfo VALUES (concat(@Area_Code,'0000'),@Area_Name); 060   061 -- ---------------------------- 062 -- Table structure for `DeviceConnect` 063  www.2cto.com   -- ---------------------------- 064 DROP TABLE IF EXISTS `DeviceConnect`; 065 CREATE TABLE `DeviceConnect` ( 066   `ConnectID` bigint(20) NOT NULL auto_increment COMMENT '唯一、非空、自增、主鍵', 067   `DeviceID` bigint(20) default NULL COMMENT '設備ID', 068   `ConnectDate` datetime default NULL COMMENT '告警日期', 069   `ConnectStatus` int(20) default NULL COMMENT '告警狀態', 070   `ComfirmAlert` tinyint(4) default '0' COMMENT '是否已確認告警 未確認0,已確認1', 071   `ComfirmTime` datetime DEFAULT NULL COMMENT '確認告警日期', 072   `ComfirmUserID` bigint(20) DEFAULT NULL COMMENT '確認告警人', 073   PRIMARY KEY  (`ConnectID`) 074 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='設備告警信息表'; 075   076 -- ---------------------------- 077 -- Records of DeviceConnect 078 -- ---------------------------- 079   080 -- ---------------------------- 081 -- Table structure for `DeviceInfo` 082 -- ---------------------------- 083 DROP TABLE IF EXISTS `DeviceInfo`; 084 CREATE TABLE `DeviceInfo` ( 085   `DeviceID` bigint(20) NOT NULL auto_increment COMMENT '設備、服務器編號', 086   `DepartID` bigint(20) default NULL COMMENT '設備安裝的單位編號', 087   `DeviceType` int(11) default NULL COMMENT '設備類型', 088   `DeviceName` varchar(100) default NULL COMMENT '設備名稱', 089   `LineCount` int(11) default NULL COMMENT '線路數量', 090   `IPAddr` varchar(50) default NULL COMMENT '設備的IP地址', 091   `HttpPort` int(11) default NULL COMMENT '設備查詢語音時使用的端口號', 092  www.2cto.com     `ManagePort` int(11) default NULL COMMENT '設備管理端口號', 093   `UserName` varchar(50) default NULL COMMENT '管理用戶名', 094   `UserPWD` varchar(50) default NULL COMMENT '管理密碼', 095   `UploadPolicy` int(20) default NULL COMMENT '上傳策略', 096   `UploadTime` varchar(50) default NULL COMMENT '上傳時間,時分,如需要隨時上傳,則為2400', 097   `LastCleanDate` datetime default NULL, 098   `StatusMID` int(20) default NULL COMMENT '錄音服務器和錄音終端設備,數據由哪個矩陣服務器采集', 099   PRIMARY KEY  (`DeviceID`) 100 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='設備信息表'; 101   102 -- ---------------------------- 103 -- Records of DeviceInfo 104 -- ---------------------------- 105   106 -- ---------------------------- 107 -- Table structure for `ImportantNote` 108 -- ---------------------------- 109 DROP TABLE IF EXISTS `ImportantNote`; 110 CREATE TABLE `ImportantNote` ( 111   `NoteID` bigint(20) NOT NULL auto_increment COMMENT '編號', 112   `Note` varchar(8000) default NULL COMMENT '信息內容', 113   `InDate` datetime default NULL COMMENT '輸入日期', 114   `UserID` bigint(20) default NULL COMMENT '添加該信息的用戶ID', 115   PRIMARY KEY  (`NoteID`) 116 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='重要提示信息表'; 117   118 -- ---------------------------- 119 -- Records of ImportantNote 120 -- ---------------------------- 121   122 -- ---------------------------- 123 -- Table structure for `LineLost` 124 -- ---------------------------- 125 DROP TABLE IF EXISTS `LineLost`; 126 CREATE TABLE `LineLost` ( 127   `LostID` bigint(20) NOT NULL auto_increment COMMENT '編號', 128   `DeviceID` bigint(20) default NULL COMMENT '設備編號', 129   `LineIDOnDevice` bigint(20) default NULL COMMENT '設備上的線路號', 130   `StartTime` datetime default NULL COMMENT '斷線開始時間', 131   `EndTime` datetime default NULL COMMENT '斷線結束時間', 132  www.2cto.com     PRIMARY KEY  (`LostID`) 133 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='斷線信息表'; 134   135 -- ---------------------------- 136 -- Records of LineLost 137 -- ---------------------------- 138   139 -- ---------------------------- 140 -- Table structure for `PhoneLine` 141 -- ---------------------------- 142 DROP TABLE IF EXISTS `PhoneLine`; 143 CREATE TABLE `PhoneLine` ( 144   `LineID` bigint(20) NOT NULL auto_increment COMMENT '電話號碼線路編號', 145   `DepartID` bigint(20) default NULL COMMENT '號碼所在單位', 146   `PhoneNO` varchar(50) default NULL COMMENT '電話號碼', 147   `ShortPhoneNO` varchar(50) default NULL COMMENT '電話號碼', 148   `LineDesc` varchar(50) default NULL COMMENT '描述信息', 149   PRIMARY KEY  (`LineID`) 150 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='電話號碼表'; 151   152 -- ---------------------------- 153 -- Records of PhoneLine 154  www.2cto.com   -- ---------------------------- 155   156 -- ---------------------------- 157 -- Table structure for `QueryRecord` 158 -- ---------------------------- 159 DROP TABLE IF EXISTS `QueryRecord`; 160 CREATE TABLE `QueryRecord` ( 161   `QueryID` bigint(20) NOT NULL auto_increment COMMENT '編號', 162   `UserID` bigint(20) NOT NULL COMMENT '該查詢的用戶編號', 163   `QueryTime` datetime default NULL COMMENT '查詢時間', 164   `FileID` bigint(20) default NULL COMMENT '查詢的文件的編號', 165   PRIMARY KEY  (`QueryID`) 166 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用戶查詢記錄表'; 167   168 -- ---------------------------- 169 -- Records of QueryRecord 170 -- ---------------------------- 171   172 -- ---------------------------- 173 -- Table structure for `RealMonitor` 174 -- ---------------------------- 175 DROP TABLE IF EXISTS `RealMonitor`; 176 CREATE TABLE `RealMonitor` ( 177   `RealMonitorID` bigint(20) NOT NULL auto_increment COMMENT '編號', 178   `MatrixServerID` bigint(20) default NULL COMMENT '數據提供的矩陣服務器的編號', 179   `DeviceID` bigint(20) default NULL COMMENT '該線路的設備的編號', 180   `LineIDOnDevice` bigint(20) default NULL COMMENT '該線路在設備上的編號', 181   `LineType` int(11) default '0' COMMENT '線路類型', 182   `CallStatus` int(20) default NULL COMMENT '呼叫結果', 183   `CallDirection` int(20) default NULL COMMENT '呼叫方向', 184   `MyPhoneNO` varchar(50) default NULL COMMENT '本方號碼', 185   `MyShortPhoneNO` varchar(50) default NULL COMMENT '本方短號', 186   `RemotePhoneNO` varchar(50) default NULL COMMENT '對方號碼', 187   `RefleshTime` datetime default NULL COMMENT '該信息刷新的時間', 188   PRIMARY KEY  (`RealMonitorID`) 189 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='實時監控信息表'; 190   191 -- ---------------------------- 192  www.2cto.com   -- Records of RealMonitor 193 -- ---------------------------- 194   195 -- ---------------------------- 196 -- Table structure for `UploadFile` 197 -- ---------------------------- 198 DROP TABLE IF EXISTS `UploadFile`; 199 CREATE TABLE `UploadFile` ( 200   `FileID` bigint(20) NOT NULL auto_increment COMMENT '編號', 201   `FileDesc` varchar(1500) default NULL COMMENT '文件描述', 202   `FileName` varchar(100) default NULL COMMENT '文件名稱', 203   `InDate` datetime default NULL COMMENT '上傳時間', 204   `UserID` bigint(20) NOT NULL COMMENT '上傳該文件的用戶的編號', 205   PRIMARY KEY  (`FileID`) 206 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='文件下載信息表'; 207   208 -- ---------------------------- 209 -- Records of UploadFile 210 -- ---------------------------- 211   212 -- ---------------------------- 213  www.2cto.com   -- Table structure for `UserList` 214 -- ---------------------------- 215 DROP TABLE IF EXISTS `UserList`; 216 CREATE TABLE `UserList` ( 217   `UserID` bigint(20) NOT NULL auto_increment COMMENT '用戶編號', 218   `DepartID` bigint(20) default NULL COMMENT '設備編號', 219   `UserName` varchar(20) default NULL COMMENT '用戶名', 220   `UserPWD` varchar(200) default NULL COMMENT '用戶密碼', 221   `FullName` varchar(100) default NULL COMMENT '用戶姓名', 222   `UserDesc` varchar(50) default NULL COMMENT '用戶描述信息', 223   `IDCard` varchar(40) default NULL COMMENT '身份證號', 224   `UserPopedom` int(20) default '0' COMMENT '用戶權限值', 225   PRIMARY KEY  (`UserID`) 226 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用戶信息表'; 227   228 -- ---------------------------- 229 -- Records of UserList 230 -- ---------------------------- 231   232 INSERT INTO UserList VALUES ('1', concat(@Prov_Code,'000000') , 'styh', '698d51a19d8a121ce581499d7b701668', 'styh', @Prov_Name, '123456789987654', '63'); 233 INSERT INTO UserList VALUES ('2', concat(@Area_Code,'0000') , 'admin', '698d51a19d8a121ce581499d7b701668', 'sjyh', @Area_Name, '123456789987654', '63'); 234   235 -- ---------------------------- 236 -- Table structure for `UserAuthenticate` 237 -- ---------------------------- 238 DROP TABLE IF EXISTS `UserAuthenticate`; 239 CREATE TABLE `UserAuthenticate` ( 240   `AuthID` bigint(20) NOT NULL auto_increment COMMENT '授權編號', 241   `UserID` bigint(20) default NULL COMMENT '用戶編號', 242   `ManageDepartID` bigint(20) default NULL COMMENT '授權給該用戶的可以訪問的單位的編號', 243   PRIMARY KEY  (`AuthID`)  www.2cto.com   244 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用戶權限信息表'; 245   246 -- ---------------------------- 247 -- Records of UserAuthenticate 248 -- ---------------------------- 249 INSERT INTO UserAuthenticate VALUES ('1', '1', concat(@Prov_Code,'000000')); 250 INSERT INTO UserAuthenticate VALUES ('2', '2', concat(@Area_Code,'0000')); 251   252 -- ---------------------------- 253 -- Table structure for `UserLog` 254 -- ---------------------------- 255 DROP TABLE IF EXISTS `UserLog`; 256 CREATE TABLE `UserLog` ( 257   `LogID` bigint(16) NOT NULL auto_increment COMMENT '登錄編號', 258   `UserID` bigint(16) NOT NULL COMMENT '用戶編號', 259   `IPAddr` varchar(50) default NULL COMMENT '用戶登錄時使用的IP地址', 260   `LogINTime` datetime default NULL COMMENT '登錄時間', 261   `LogOUTTime` datetime default NULL COMMENT '注銷時間', 262   PRIMARY KEY  (`LogID`)  www.2cto.com   263 ) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT='用戶登錄記錄表'; 264   265 -- ---------------------------- 266 -- Records of UserLog 267 -- ---------------------------- 268   269 -- ---------------------------- 270 -- Table structure for `VoiceFileList` 271 -- ---------------------------- 272 DROP TABLE IF EXISTS `VoiceFileList`; 273 CREATE TABLE `VoiceFileList` ( 274   `FileID` bigint(20) NOT NULL auto_increment COMMENT '文件編號', 275   `DeviceID` bigint(20) default NULL COMMENT '當前文件所在設備的編號', 276   `LineID` bigint(20) default NULL COMMENT '該通話局內號碼對應的線路編號', 277   `PhoneNO` varchar(50) default NULL COMMENT '對方電話號碼', 278   `RecTime` datetime default NULL COMMENT '通話開始時間', 279   `RingLength` int(20) default NULL COMMENT '響鈴時間長度', 280   `RecLength` int(20) default NULL COMMENT '通話時間長度', 281   `FileName` varchar(100) default NULL COMMENT '文件名稱', 282   `isCallOUT` int(20) default NULL COMMENT '呼入呼出', 283  www.2cto.com     `iState` int(20) default NULL COMMENT '呼叫結果', 284   `iFileLevel` int(20) default NULL COMMENT '文件重要等級', 285   `FileMemo` varchar(50) default NULL COMMENT '文件描述', 286   `isDELed` int(20) default NULL COMMENT '是否已被刪除', 287   `OrgDeviceID` bigint(20) default NULL COMMENT '該文件在原始錄音設備編號', 288   `OrgLineIDOnDevice` bigint(20) default NULL COMMENT '該文件在原始錄音設備上的線路編號', 289   `OrgStorageTypeOnDevice` bigint(20) default NULL COMMENT '該文件在原始錄音設備上的存儲介質類型', 290   `OrgFileIDOnDevice` bigint(20) default NULL COMMENT '該文件在原始錄音設備上的文件編號', 291   PRIMARY KEY  (`FileID`) 292 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='通話記錄清單'; 293   294 -- ---------------------------- 295 -- Records of VoiceFileList 296 -- ---------------------------- 297   298 -- ---------------------------- 299 -- Table structure for `LongCallInfo` 300 -- ---------------------------- 301 DROP TABLE IF EXISTS `LongCallInfo`; 302 CREATE TABLE `LongCallInfo` ( 303   `LongCallID` int(11) NOT NULL auto_increment COMMENT '編號', 304   `DeviceID` bigint(11) NOT NULL COMMENT '設備編號', 305   `lineIDOnDevice` bigint(11) NOT NULL COMMENT '線路編號', 306   `isCallOUT` int(1) NOT NULL COMMENT '呼入呼出', 307   `PhoneNO` varchar(64) NOT NULL COMMENT '本方號碼', 308   `RemotePhoneNO` varchar(64) NOT NULL COMMENT '對方號碼', 309   `ShortPhoneNO` varchar(64) NOT NULL COMMENT '本方短號', 310   `StartTime` datetime NOT NULL COMMENT '開始時間', 311   `EndTime` datetime NOT NULL COMMENT '結束時間', 312  www.2cto.com     PRIMARY KEY  (`LongCallID`) 313 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='長時間通話信息表'; 314   315 -- ---------------------------- 316 -- Records of LongCallInfo 317 -- ---------------------------- 01 -- ---------------------------- 02 -- Function structure for `GetDepLevelByID` 03 -- ---------------------------- 04 DROP FUNCTION IF EXISTS `GetDepLevelByID`; 05 DELIMITER ;; 06 CREATE DEFINER=`root`@`%` FUNCTION `GetDepLevelByID`(depID bigint) RETURNS int(11) 07     COMMENT '根據部門的編號id來查找部門的級別' 08 begin 09             declare tmpDepID bigint default depID;      10             declare depLevel bigint default 1;          11                 WHILE tmpDepID>100 DO                12                     if (tmpDepID mod 100)<>0 then 13                         set depLevel=depLevel+1; 14                     end if; 15                     set tmpDepID=tmpDepID/100; 16                 END WHILE;                                          17             return depLevel; 18     end 19 ;; 20 DELIMITER ; 01 -- ---------------------------- 02 -- Function structure for `GetListNums` 03 -- ---------------------------- 04 DROP FUNCTION IF EXISTS `GetListNums`; 05 DELIMITER ;;  www.2cto.com   06 CREATE DEFINER=`root`@`%` FUNCTION `GetListNums`(CurLogID bigint) RETURNS bigint(20) 07 begin 08 RETURN (Select Count(*) as ListenNums from QueryRecord, UserLog Where UserLog.LogID=CurLogID and QueryRecord.UserID = UserLog.UserID 09    and QueryRecord.QueryTime >= UserLog.LogINTime and QueryRecord.QueryTime <= UserLog.LogOUTTime); 10 end 11 ;; 12 DELIMITER ;   01 -- ---------------------------- 02 -- Function structure for `GetParDepIDByLevel` 03 -- ---------------------------- 04 DROP FUNCTION IF EXISTS `GetParDepIDByLevel`; 05 DELIMITER ;; 06 CREATE DEFINER=`root`@`%` FUNCTION `GetParDepIDByLevel`(depID bigint, 07         depLevel int) RETURNS bigint(20) 08     COMMENT '根據部門編號和所要查找的級別找到該級別相對應的部門編號\r\n如 32010101,1 --->32000000\r\n' 09 begin 10     declare parDepID bigint default depID; 11     declare levelPar bigint default 0; 12     declare i int default 0;    13       14     if GetDepLevelByID(depID)<>depLevel then 15         WHILE parDepID>power(100,depLevel) DO 16                 set levelPar=power(100,i); 17                 set parDepID=depID div levelPar;    18                 set i=i+1; 19         END WHILE; 20         set levelPar=power(100,i-1);    21         set parDepID=parDepID*levelPar; 22  www.2cto.com           return parDepID; 23           24     else 25         return depID; 26     end if; 27 end 28 ;; 29 DELIMITER ;       作者 bug哥

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved