读书人

sqlserver 修改字段属性解决方法

发布时间: 2012-06-11 17:42:22 作者: rapoo

sqlserver 修改字段属性

SQL code
CREATE TABLE M_NAMES (    ID                INT IDENTITY(1, 1),       --ID    CLASS_CD        TINYINT NOT NULL,         --    NAME_CD            SMALLINT NOT NULL,        --    FULL_NAME        NVARCHAR(60),             --    SHORT_NM1        NVARCHAR(10),             --1    SHORT_NM2        NVARCHAR(20),             --2    REMARK1            NVARCHAR(40),             --1    REMARK2            NVARCHAR(40),             --2    DIV1            NVARCHAR(2),              --1    DIV2            NVARCHAR(3),              --2    DIV3            NVARCHAR(4),              --3    INS_DATE        DATETIME,                 --    UPD_DATE        DATETIME,                 --    VERSION            INT NOT NULL,             --    CONSTRAINT PK_NAMES PRIMARY KEY (ID),    CONSTRAINT U_NAMES UNIQUE (CLASS_CD,NAME_CD))CREATE INDEX INDEX_NAME ON M_NAMES(CLASS_CD,NAME_CD)

怎么把这个id的 自增长去掉。去掉后在加上。求两行代码。
一行去自增长,一行在加上自增长(id)

[解决办法]
ALTER TABLE TB DROP COLUMN ID
ALTER TABLE TB ADD ID INT IDENTITY(1,1)
?
[解决办法]
SQL code
SET IDENTITY_INSERT [TB_NAME] on--把Identity属性停用后,insert 语句要插入ID信息....
[解决办法]
update tb_name set col_type=col_identity

[解决办法]
SET IDENTITY_INSERT tb_name on
插入记录
SET IDENTITY_INSERT tb_name off
[解决办法]
SQL code
--在网上查了很多资料 基本上就是这样了drop table m_namesCREATE TABLE M_NAMES (    AID                INT IDENTITY(1, 1),       --不使用ID 是因为与下面查询的系统列名有混淆    CLASS_CD        TINYINT NOT NULL,         --    NAME_CD            SMALLINT NOT NULL,        --    FULL_NAME        NVARCHAR(60),             --    CONSTRAINT PK_NAMES PRIMARY KEY (AID),    CONSTRAINT U_NAMES UNIQUE (CLASS_CD,NAME_CD))insert into m_names values(1,12343,'211211')insert into m_names values (1,12,'aaad')insert into m_names values(22,4,'aa')select * from m_names--下面是重点 查询AID列系统配置信息drop table abcselect * into abc from (select name,id, typestat,colstat,autoval from syscolumns where name='AID')as b--修改AID列属性exec sp_configure 'show advanced options',1reconfiguregoexec sp_configure  'allow updates',  1  GO  RECONFIGURE  WITH  OVERRIDE  GO  --取消自动增长update  syscolumns  set  typestat  =0  ,colstat=0  ,autoval  =null    where  id=(select id from abc)--恢复自动增长功能--update  syscolumns set typestat =(select typestat from abc),colstat=(select colstat from abc),autoval=(select autoval from abc) where id=(select id from abc )go  sp_configure  'allow updates',  0  GO  RECONFIGURE  WITH  OVERRIDE  GO  --恢复自动增长功能时 添加数据要这样添加set identity_insert m_names on--必加这一行 要不热就报错insert into m_names(class_cd,name_cd,full_name) values(8,7,'aba') 

读书人网 >SQL Server

热点推荐