zoukankan      html  css  js  c++  java
  • Copy Table From Another Table

    CREATE FUNCTION dbo.GetColumnsToCopy (@Table AS NVARCHAR(100))
    RETURNS VARCHAR(8000)
    AS
    BEGIN
     
     DECLARE @Column VARCHAR(255)
     DECLARE @Result VARCHAR(8000)
     
     DECLARE Source CURSOR FOR
      SELECT     TOP 100 PERCENT '[' + dbo.syscolumns.NAME + '], ' AS [Column]
      FROM         dbo.syscolumns INNER JOIN
                            dbo.sysobjects ON dbo.syscolumns.id = dbo.sysobjects.id
      WHERE     (dbo.sysobjects.NAME = @Table) AND (dbo.syscolumns.colstat <> 1) AND (dbo.syscolumns.NAME NOT IN ('PageID', 'AddedOn',
                            'AddedBy', 'ChangedOn', 'ChangedBy', 'LockedOn', 'LockedBy', 'boaGUID', 'boaStatus'))
      ORDER BY dbo.syscolumns.colorder
     
     OPEN Source
     
     FETCH Source INTO @Column

     SET @Result = ''

     WHILE @@FETCH_STATUS = 0
     BEGIN
      
      SET  @Result = @Result + @Column
      
      FETCH Source INTO @Column
      
     END
     
     CLOSE Source
     
     DEALLOCATE Source
     
     RETURN @Result
     
    END

    CREATE FUNCTION dbo.GetDataTypeDeclaration (
     @DataType VARCHAR(250),
     @CharacterLength INT,
     @NumericPrecision INT,
     @NumericScale INT
    )
    RETURNS VARCHAR(250) AS
    BEGIN
     
     DECLARE @Declaration VARCHAR(250)
     
     SELECT @Declaration = CASE @DataType
      WHEN 'varchar' THEN 'VARCHAR('  + CAST(@CharacterLength AS VARCHAR(50)) + ')'
      WHEN 'nvarchar' THEN 'NVARCHAR('  + CAST(@CharacterLength AS VARCHAR(50)) + ')'
      WHEN 'char' THEN 'CHAR('  + CAST(@CharacterLength AS VARCHAR(50)) + ')'
      WHEN 'nchar' THEN 'NCHAR('  + CAST(@CharacterLength AS VARCHAR(50)) + ')'
      WHEN 'text' THEN 'TEXT'
      WHEN 'ntext' THEN 'NTEXT'
      WHEN 'int' THEN 'INT'
      WHEN 'integer' THEN 'INT'
      WHEN 'decimal' THEN 'DECIMAL('  + CAST(@NumericPrecision AS VARCHAR(50)) + ', ' + CAST(@NumericScale AS VARCHAR(50)) + ')'
      WHEN 'numeric' THEN 'NUMERIC('  + CAST(@NumericPrecision AS VARCHAR(50)) + ', ' + CAST(@NumericScale AS VARCHAR(50)) + ')'
      WHEN 'float' THEN 'FLOAT('  + CAST(@NumericPrecision AS VARCHAR(50)) + ')'
      WHEN 'real' THEN 'REAL('  + CAST(@NumericPrecision AS VARCHAR(50)) + ')'
      ELSE @DataType
     END
      
     RETURN @Declaration
    END

  • 相关阅读:
    SVN集中式版本控制器的安装、使用与常见问题汇总
    Angular指令渗透式理解
    Angular双向数据绑定MVVM以及基本模式分析
    Angular自定义指令(directive)
    Angular作用域的层级概念(scope)
    json 序列化
    cookies session 知识点
    mvc基础知识
    cookies 练习1
    MySQL教程
  • 原文地址:https://www.cnblogs.com/zhangchenliang/p/1650884.html
Copyright © 2011-2022 走看看