根據表名和索引獲取需要的列名的存儲過程建站
導讀:1建站知識根據表名和索引獲取需要的列名的存儲過程,需要的朋友可以參考下。網站seo優化課程seo網站優化。
復制代碼 代碼如下:
create proc p_sword_getblcolumn ( @tblName varchar(200), @fromIndex int, @toIndex int, @columnName varchar(3000) output ) as begin declare @tempColumn varchar(3000) declare @errMsg varchar(200) declare @i int set @i=1 set @columnName='' set @errMsg='' declare tempColumnCur cursor for select syscolumns.name from syscolumns join sysobjects on syscolumns.id = sysobjects.id where sysobjects.name =@tblName order by syscolumns.colorder open tempColumnCur fetch next from tempColumnCur into @tempColumn while @@FETCH_STATUS=0 begin if(@fromIndex=0 and @toIndex=0) begin set @columnName=@columnName+','+@tempColumn end if(@fromIndex=0 and @toIndex<>0) begin if(@i<=@toIndex) set @columnName=@columnName+','+@tempColumn end else if(@fromIndex <>0 and @toIndex=0) begin if(@i>=@fromIndex) set @columnName=@columnName+','+@tempColumn end else if(@i>=@fromIndex and @i<=@toIndex) begin set @columnName=@columnName+','+@tempColumn end set @i=@i+1 print @i fetch next from tempColumnCur into @tempColumn end close tempColumnCur deallocate tempColumnCur set @columnName=SUBSTRING(@columnName,2,len(@columnName)) print @columnName if(@@ERROR<&g網站seo優化軟件t;0) begin set @errMsg='get網seo優化趨勢 column error ' goto errorproc end else return 0 end errorproc: begin raiserror(@errMsg,16,1) return 1 end go
其中涉及到了raiserror函數 RAISERROR ( { msg_id | msg_str | @local_variable } { ,severity ,state } [ ,argument [ ,...n ] ] ) [ WITH option [ ,...n ] ] 參數說明: 第一個參數:{ msg_id | msg_str | @local_variable } msg_id:表示可以是一個sys.messages表中定義的消息代號; 使用 sp_addmessage 存儲在 sys.messages 目錄視圖中的用戶定義錯誤消息號。 用戶定義錯誤消息的錯誤號應當大于 50000。 msg_str:表示也可以是一個用戶定義消息,該錯誤消息最長可以有 2047 個字符; (如果是常量,請使用N'xxxx',因為是nvarchar的) 當指定 msg_str 時,RAISE網站建設多少錢RROR 將引發一個錯誤號為 5000 的錯誤消息。 @local_variable:表示也可以是按照 msg_str 方式的格式化字符串變量。 第二個參數:severity 用戶定義的與該消息關聯的嚴重級別。(這個很重要) 任何用戶都可以指定 0 到 18 之間的嚴重級別。 [0,10]的閉區間內,不會跳到catch; 如果是[11,19],則跳到catch; 如果[20,無窮),則直接終止數據庫連接; 第三個參數:state 如果在多個位置引發相同的用戶定義錯誤, 則針對每個位置使用唯一的狀態號有助于找到引發錯誤的代碼段。 介于 1 至 127 之間的任意整數。(state 默認值為1) 當state 值為 0 或大于 127 時會生成錯誤! 第四個參數:argument 用于代替 msg_str 或對應于 msg_id 的消息中的定義的變量的參數。 第五個參數:option 錯誤的自定義選項,可以是下表中的任一值: LOG :在錯誤日志和應用程序日志中記錄錯誤; NOWAIT:將消息立即發送給客戶端; SETERROR:將 @@ERROR 值和 ERROR_NUMBER 值設置為 msg_id 或 50000;相關網站seo優化課程seo網站優化。聲明: 本文由我的SEOUC技術文章主頁發布于:2023-05-21 ,文章根據表名和索引獲取需要的列名的存儲過程建站主要講述存儲過程,索引,根據表名和索引獲取需要的列名的網站建設源碼以及服務器配置搭建相關技術文章。轉載請保留鏈接: http://www.bifwcx.com/article/web_3806.html