zoukankan      html  css  js  c++  java
  • SQL创建数据库中所有用户数据表自增一主键

    --SQL创建数据库中所有用户数据表自增一主键
    --主键说明:名称为ID,数据类型为整形自增一

    --查询创建前的当前数据库所有约束
    select * from information_schema.key_column_usage

    declare @TableName nvarchar(250)
    declare @ColumnName nvarchar(250)
    set @ColumnName='ID'
    --声明读取数据库所有数据表名称游标mycursor1
    declare mycursor1 cursor for select name from dbo.SysObjects WHERE OBJECTPROPERTY(ID, 'IsUserTable') = 1
     --打开游标
    open mycursor1
    --从游标里取出数据赋值到我们刚才声明的数据表名变量中
    fetch next from mycursor1 into @TableName
    --如果游标执行成功 
    while (@@fetch_status=0)
    begin 

    --如果存在主键列
    IF EXISTS (select * from syscolumns Where ID=OBJECT_ID(N'['+@TableName+']') and name=''+@ColumnName+'')
    begin
    exec ('ALTER TABLE ['+@TableName+'] DROP COLUMN '+@ColumnName+'')
    end

    exec ('ALTER TABLE ['+@TableName+'] ADD '+@ColumnName+' [int] IDENTITY(1,1) NOT NULL PRIMARY KEY')


     --用游标去取下一条记录
        fetch next from mycursor1 into @TableName
    end

    --关闭游标
    close mycursor1
    --撤销游标
    deallocate mycursor1

    --查询创建后的当前数据库所有约束
    select * from information_schema.key_column_usage

  • 相关阅读:
    函数式编程
    _.pick lodash
    Vue mixins extend
    js 导入json配置文件
    FormData
    shell中的调试与计算
    linux命令(6/10):find 命令
    Linux性能测试分析命令_sar+iostat+vmstat+top
    linux命令详解之(at)
    linux命令(6/9):watch命令
  • 原文地址:https://www.cnblogs.com/xqf222/p/3306741.html
Copyright © 2011-2022 走看看