2017年考的计算机一级还能查吗-2017计算机等考三级数据库知识辅导:自动排除计算字段拷贝表数据

副标题:2017计算机等考三级数据库知识辅导:自动排除计算字段拷贝表数据

时间:2023-12-03 13:07:01 阅读: 最新文章 文档下载
说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

*/
   ALTER procedure dbo.x_p_copyTable
   (
   @tableName nvarchar(128),
   @condition nvarchar(1024) = N'',
   @remoteServer nvarchar(128) = N'TGM_OLD.span_tgm_020'
   )
   as
   declare @sql nvarchar(4000)
   set @sql = N'select @cnt = count(*)
   from sysobjects, syscolumns
   where sysobjects.id = syscolumns.id
   and syscolumns.colstat = 1
   and sysobjects.name = ''' + @tableName + N''''
   declare @count int
   execute sp_executesql @sql, N'@cnt int output', @count output
   if @count > 0 begin
   set @sql = N'set identity_insert ' + @tableName + N' on'
   execute sp_executesql @sql
   end
   declare @columns nvarchar(2048)
   set @columns = N''
   select 
   @columns = @columns + syscolumns.name + N','
   from sysobjects, syscolumns
   where sysobjects.id = syscolumns.id
   and syscolumns.iscomputed <> 1
   and sysobjects.name = @tableName
   if len(@columns) > 0 begin
   set @columns = substring(@columns, 1, len(@columns) - 1)
   end
   set @sql = N'insert ' + @tableName + N'(' + @columns + N') '
   + N'select ' + @columns + N' from ' + @remoteServer + N'.dbo.' + @tableName
   if @condition <> N'' begin
   set @sql = @sql + N' where ' + @condition
   end
   execute sp_executesql @sql
   if @count > 0 begin
   set @sql = N'set identity_insert ' + @tableName + N' off'
   execute sp_executesql @sql
   end

2017计算机等考三级数据库知识辅导:自动排除计算字段拷贝表数据.doc

本文来源:https://www.wddqw.com/OhgO.html