Advertisement
Guest User

Untitled

a guest
Jul 25th, 2017
135
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
T-SQL 2.48 KB | None | 0 0
  1.  
  2. SET NOCOUNT ON;  
  3. DECLARE @SQL NVARCHAR(MAX)
  4. DECLARE @ID  int
  5. ,@name NVARCHAR(2000)
  6.       ,@dt NVARCHAR(2000)
  7.       ,@telnum NVARCHAR(2000)
  8.       ,@filial NVARCHAR(2000)
  9.       ,@cod NVARCHAR(2000)
  10.       ,@ans1 NVARCHAR(2000)
  11.       ,@ans2 NVARCHAR(2000)
  12.       ,@ans3 NVARCHAR(2000)
  13.       ,@ans4 NVARCHAR(2000)
  14.       ,@ans5 NVARCHAR(2000)
  15.       ,@ans6 NVARCHAR(2000)
  16.       ,@ans7 NVARCHAR(2000)
  17.       ,@ans8 NVARCHAR(2000)
  18.       ,@ans9 NVARCHAR(2000)
  19.       ,@ans10 NVARCHAR(2000)
  20.       ,@ans11 NVARCHAR(2000)
  21.       ,@ans12 NVARCHAR(2000)
  22.       ,@noans NVARCHAR(2000)
  23.  
  24. DECLARE vendor_cursor CURSOR FOR  
  25. SELECT [id]
  26.       ,[name]
  27.       ,[dt]
  28.       ,[telnum]
  29.       ,[filial]
  30.       ,[cod]
  31.       ,[ans1]
  32.       ,[ans2]
  33.       ,[ans3]
  34.       ,[ans4]
  35.       ,[ans5]
  36.       ,[ans6]
  37.       ,[ans7]
  38.       ,[ans8]
  39.       ,[ans9]
  40.       ,[ans10]
  41.       ,[ans11]
  42.       ,[ans12]
  43.       ,[noans]
  44.    FROM [oktell].[dbo].[olp_temp_abonent_table_dialog]
  45.  
  46. OPEN vendor_cursor  
  47.  
  48. FETCH NEXT FROM vendor_cursor  
  49. INTO   @ID,@name,@dt
  50.       ,@telnum
  51.       ,@filial
  52.       ,@cod
  53.       ,@ans1
  54.       ,@ans2
  55.       ,@ans3
  56.       ,@ans4
  57.       ,@ans5
  58.       ,@ans6
  59.       ,@ans7
  60.       ,@ans8,@ans9,@ans10,@ans11,@ans12,@noans
  61.  
  62. WHILE @@FETCH_STATUS = 0  
  63. BEGIN  
  64.     PRINT '123 '  
  65. SET @SQL =  'INSERT INTO OPENROWSET(''Microsoft.ACE.OLEDB.12.0'',''Excel 12.0;Database='+@cod+''',''select [id],[dt],[tel] ,[name],[filial],[ans1],[ans2],[ans3],[ans4],[ans5],[ans6],[ans7],[ans8],[ans9],[ans10],[ans11],[ans12],[noans] from [Лист1$]'')'+
  66. 'SELECT ''' +CAST(@ID AS NVARCHAR(5))+
  67. ''','''+ ISNULL(@dt,'')+
  68. ''','''+ ISNULL(@telnum,'') +
  69. ''','''+ ISNULL(@name,'') +
  70. ''','''+  ISNULL(@filial,'')+
  71. ''','''+ ISNULL(@ans1,'') +
  72. ''','''+ISNULL(@ans2,'') +
  73. ''','''+ISNULL(@ans3,'')+
  74. ''','''+ISNULL(@ans4,'')+
  75. ''','''+ISNULL(@ans5,'')+
  76. ''','''+ISNULL(@ans6,'')+
  77. ''','''+ISNULL(@ans7,'')+
  78. ''','''+ISNULL(@ans8,'')+
  79. ''','''+ISNULL(@ans9,'')+'
  80. '','''+ISNULL(@ans10,'')+
  81. ''','''+ISNULL(@ans11,'')+
  82. ''','''+ISNULL(@ans12,'')+
  83. ''','''+ISNULL(@noans,'')+''''
  84.   PRINT @SQL
  85.  
  86.   EXECUTE (@SQL)
  87.  
  88.   DELETE [oktell].[dbo].[olp_temp_abonent_table_dialog] WHERE [id] =  @ID AND [cod] = @cod
  89.  
  90. FETCH NEXT FROM vendor_cursor  
  91. INTO   @ID,@name,@dt
  92.       ,@telnum
  93.       ,@filial
  94.       ,@cod
  95.       ,@ans1
  96.       ,@ans2
  97.       ,@ans3
  98.       ,@ans4
  99.       ,@ans5
  100.       ,@ans6
  101.       ,@ans7
  102.       ,@ans8,@ans9,@ans10,@ans11,@ans12,@noans
  103.  
  104. END  
  105. CLOSE vendor_cursor;  
  106. DEALLOCATE vendor_cursor;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement