利用存储过程动态创建表格

来源:互联网 发布:php 判断是微信浏览器 编辑:程序博客网 时间:2024/06/06 04:53
-- ================================================-- Template generated from Template Explorer using:-- Create Procedure (New Menu).SQL---- Use the Specify Values for Template Parameters -- command (Ctrl-Shift-M) to fill in the parameter -- values below.---- This block of comments will not be included in-- the definition of the procedure.-- ================================================SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGO-- =============================================-- Author:<Author,,Name>-- Create date: <Create Date,,>USE [CTP]GO/****** Object:  StoredProcedure [dbo].[DeleteNews]    Script Date: 08/11/2015 21:05:34 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOALTER PROCEDURE [dbo].[DeleteNews]     as     DECLARE @PointerPrev int     DECLARE @PointerCurr int     DECLARE @TId nvarchar(30)    DECLARE @TIdd nvarchar(30)    DECLARE @MarId nvarchar(11)    DECLARE @HIS nvarchar(4)    DECLARE @ID nvarchar(500)    Set @PointerPrev=1     set  @ID='y,k'     set  @MarId='MarketData'     set @HIS='His'   while (@PointerPrev < LEN(@ID))     Begin         Set @PointerCurr=CharIndex(',',@ID,@PointerPrev)         if(@PointerCurr>0)         Begin             set @TId=cast(SUBSTRING(@ID,@PointerPrev,@PointerCurr-@PointerPrev) as varCHAR)+@MarId+@HIS            if exists (select * from sysobjects where id = object_id(N'[dbo].['+@TId+']') and OBJECTPROPERTY(id, N'IsUserTable') = 0)             Begin             exec('select * into '+@TId+' from MarketData')            exec('alter Table  '+@TId+' add constraint '+@PointerPrev+' primary key(TradingDay,InstrumentID,UpdateTime,UpdateMillisec)')              End         End             SET @PointerPrev = @PointerCurr+1     End     --删除最后一个,因为最后一个后面没有逗号,所以在循环中跳出,需另外再删除           set @TId=cast(SUBSTRING(@ID,@PointerPrev,LEN(@ID)-@PointerPrev+1) as varCHAR)+@MarId+@HIS        if exists (select * from sysobjects where id = object_id(N'[dbo].['+@TId+']') and OBJECTPROPERTY(id, N'IsUserTable') = 0)       begin      exec('select * into '+@TId+' from MarketData');      exec('alter Table  '+@TID+' add constraint '+@PointerPrev+' primary key(TradingDay,InstrumentID,UpdateTime,UpdateMillisec)')      endGO

0 0
原创粉丝点击