国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > SQL Server > 正文

sql server動態存儲過程按日期保存數據示例

2024-08-31 01:02:26
字體:
來源:轉載
供稿:網友
在sql server存儲過程中進行日期計算,按日期建表效率最高,下面就公司項目的部分動態存儲過程粘貼出來
 
 

在項目中經常有大量數據信息保存到數據庫,如只用一張表保存那肯定不現實,首選解決方案為按日期建立動態表來保存數據。在不改變保存方式的代碼的情況下,用動態存儲過程是首選,在sql server存儲過程中進行日期計算,按日期建表效率最高,下面就公司項目的部分動態存儲過程粘貼出來:

-----sql語句:ALTER proc [dbo].[EventInsert]@chrTagData varchar(50), --編號@intEData int,@chrJZData varchar(50),@intDYData int,@intXHData int,@createdata datetime,@chrtype varchar(1) --查詢條件asbegindeclare @chrTitle varchar(1000)declare @chrSql nvarchar(4000)declare @chrdate varchar(50)declare @chrMetabname varchar(50) --每日新建報警新表名declare @chrSendtabname varchar(50) --每日新建消息彈出框新表名declare @chrSockDatatabname varchar(50) --每日原始數據新表名set @chrdate =replace(convert(varchar(10),getdate(),120),'-','')set @chrMetabname='SocketMe'+@chrdateset @chrSendtabname='MessSend'+@chrdateset @chrSockDatatabname='SockData'+@chrdateif isnull(@chrtype,'')=''beginreturnendselect @chrTitle=CategoryTitle from EventCategory where CategoryID=@chrtype----新建每日信息模擬表1set @chrsql= 'if not exists(select 1 from sysobjects where name='''+@chrMetabname+''' and type=''U'')beginCREATE TABLE '+@chrMetabname+'(SMeID int IDENTITY(1,1) primary key,tabname varchar(50),TagData varchar(50),TagDataMe varchar(500),Pcount int NULL,Content varchar(5000),UserID int NULL,JZData varchar(50),EData int,DYData int,XHData int,Type varchar(1),State varchar(1),IfClose varchar(1),CloseDate datetime,CreateDate datetime, )end'--print @chrsql exec(@chrsql)--------新建信息模擬表2------------set @chrsql= 'if not exists(select 1 from sysobjects where name='''+@chrSendtabname+''' and type=''U'')beginCREATE TABLE '+@chrSendtabname+'(MessID int IDENTITY(1,1) primary key,TabName varchar(50),TabPrID int,MessTitle varchar(500),TagData varchar(50),TagDataMe varchar(1000),Content varchar(2000),Type varchar(1),CreateDate datetime)end'--print @chrsql exec(@chrsql)-----模擬環境 判斷符合條件的數據則插入----------------------set @chrsql= 'if not exists(select 1 from '+@chrMetabname+' whereTagData='''+@chrTagData+''' and type='''+@chrtype+''' and IfClose=''0'')begin--插入表一insert into '+@chrMetabname+' (tabname,TagData,TagDataMe,Content,JZData,EData,DYData,XHData,Type,IfClose,CreateDate,State)--模擬數據select '''+@chrMetabname+''','''+@chrTagData+''',dbo.funTagDataMeget_all('''+@chrTagData+'''),'''+@chrTitle+',位置:[''+dbo.funGetEvenAddget('''+@chrJZData+''')+'']'','''+@chrJZData+''','''+CAST(@intEData as varchar)+''','''+CAST(@intDYData as varchar)+''','''+CAST(@intXHData as varchar)+''','''+@chrtype+''',''0'',getdate(),''0''----dbo.funGetEvenAddget 為自定義函數declare @intSMeID intdeclare @chrtempdate varchar(50)set @intSMeID =@@identity delete '+@chrSendtabname+' whereTagData='''+@chrTagData+''' andtype='''+@chrtype+'''---插入表二insert into '+@chrSendtabname+' (TabName,TabPrID,MessTitle,TagData,Content,Type,CreateDate)select '''+@chrMetabname+''',@intSMeID,dbo.funTagDataMeget_all('''+@chrTagData+''')+'''+@chrTitle+''','''+@chrTagData+''',dbo.funTagDataMeget_all('''+@chrTagData+''')+'''+@chrTitle+',位置:[''+dbo.funGetEvenAddget('''+@chrJZData+''')+'']'','''+@chrtype+''',getdate()end ' print @chrsqlexec(@chrsql)end---根據實際業務進行邏輯處理后插入動態表

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 天台县| 马龙县| 凤山县| 东宁县| 金阳县| 剑川县| 商洛市| 霞浦县| 清远市| 呼和浩特市| 镇巴县| 抚顺县| 惠安县| 赤峰市| 镇赉县| 沈阳市| 阿鲁科尔沁旗| 汉中市| 兰西县| 榆林市| 巨野县| 巴马| 赤水市| 镇远县| 龙江县| 贡嘎县| 阿拉善左旗| 沁源县| 华蓥市| 霍林郭勒市| 天全县| 凤山市| 于都县| 公安县| 西畴县| 张掖市| 丘北县| 安溪县| 榆林市| 双牌县| 武汉市|