SQL实现新增表,表名更改,列名更改,约束更改等

 

--新建表:
CREATE TABLE TABLENAME
(
ID INT IDENTITY (1,1) PRIMARY KEY ,
NAME VARCHAR(50) DEFAULT 'HELLO' NULL ,
JOB NTEXT NULL ,
CREATIONDT DATETIME,
COLUMN4 MONEY NULL ,
COLUMN5 INT DEFAULT 0,
COLUMN6 DECIMAL (12,4) DEFAULT 0,
COLUMN7 IMAGE NULL ,
COLUMN8 FLOAT
)


SELECT * FROM TABLENAME




--删除表:
DROP TABLE TABLENAME


SELECT Name FROM SysObjects Where XType='U'

select * from CUSTOMERCOUPONCARDBAK20180907

drop table CUSTOMERCOUPONCARDBAK20180907

--插入数据:
INSERT INTO [表名] (字段1,字段2) VALUES (100,'51WINDOWS.NET')

INSERT TABLENAME(JOB,CREATIONDT,COLUMN4,COLUMN5,COLUMN6,COLUMN7,COLUMN8)
VALUES('',GETDATE(),1,1,12.10,NULL,43.22)

--删除数据:
DELETE FROM TABLENAME WHERE ID>100

--更新数据:
UPDATE TABLENAME SET COLUMN4 = 200,COLUMN5 = NULL WHERE ID= 1

--新增字段:
ALTER TABLE TABLENAME ADD COLUMN4 NVARCHAR (50) NULL

--删除字段:
ALTER TABLE TABLENAME DROP COLUMN COLUMN4

--修改字段:
ALTER TABLE TABLENAME ALTER COLUMN COLUMN4 NVARCHAR (50) NULL

--重命名表:(ACCESS 重命名表,请参考文章:在ACCESS数据库中重命名表)
SP_RENAME '表名', '新表名', 'OBJECT'

SP_RENAME TABLENAME,TABLENAME1,OBJECT

--新建约束:
ALTER TABLE TABLENAME ADD CONSTRAINT 约束名 CHECK ([约束字段] <= '2000-1-1')

--删除约束:
ALTER TABLE TABLENAME DROP CONSTRAINT 约束名

--新建默认值
ALTER TABLE TABLENAME ADD CONSTRAINT 默认值名 DEFAULT '51WINDOWS.NET' FOR [字段名]

--删除默认值
ALTER TABLE TABLENAME DROP CONSTRAINT 默认值名

--删除SQL SERVER 中的日志,减小数据库文件大小
DUMP TRANSACTION 数据库名 WITH NO_LOG
BACKUP LOG 数据库名 WITH NO_LOG
DBCC SHRINKDATABASE(数据库名)
EXEC SP_DBOPTION '数据库名', 'AUTOSHRINK', 'TRUE'

--\\\添加字段通用函数
SUB ADDCOLUMN(TABLENAME,COLUMNNAME,COLUMNTYPE)
CONN.EXECUTE(ALTER TABLE TABLENAME ADD COLUMNNAME COLUMNTYPE)
END SUB

--更改字段通用函数
SUB MODCOLUMN(TABLENAME,COLUMNNAME,COLUMNTYPE)
CONN.EXECUTE(ALTER TABLE TABLENAME ALTER COLUMN COLUMNNAME COLUMNTYPE)
END SUB

--检查表是否存在

--判断表的存在:
SELECT * FROM SYSOBJECTS WHERE ID = OBJECT_ID(N'[DBO].[TABLENAME]') AND OBJECTPROPERTY(ID, N'ISUSERTABLE') = 1

--某个表的结构
SELECT * FROM SYSCOLUMNS WHERE ID = OBJECT_ID(N'[DBO].[你的表名]') AND OBJECTPROPERTY(ID, N'ISUSERTABLE') = 1

 

 

  --DB中新建表:

CREATE TABLE TABLENAME
(
ID INT IDENTITY (1,1) PRIMARY KEY ,    
NAME VARCHAR(50) DEFAULT 'HELLO' NULL ,
JOB NTEXT NULL ,
CREATIONDT DATETIME,
COLUMN4 MONEY NULL ,
COLUMN5 INT DEFAULT 0,
COLUMN6 DECIMAL (12,4) DEFAULT 0,
COLUMN7 IMAGE NULL ,
COLUMN8 FLOAT
)


SELECT * FROM TABLENAME

--删除表:

DROP TABLE TABLENAME

--插入数据:
INSERT INTO [表名] (字段1,字段2) VALUES (100,\'51WINDOWS.NET\')

INSERT TABLENAME(JOB,CREATIONDT,COLUMN4,COLUMN5,COLUMN6,COLUMN7,COLUMN8)
VALUES('',GETDATE(),1,1,12.10,NULL,43.22)

--删除数据:
DELETE FROM TABLENAME WHERE ID>100

--更新数据:
UPDATE TABLENAME SET COLUMN4 = 200,COLUMN5 = NULL WHERE ID= 1

--新增字段:
ALTER TABLE TABLENAME ADD COLUMN4 NVARCHAR (50) NULL

--删除字段:
ALTER TABLE TABLENAME DROP COLUMN COLUMN4

--修改字段:
ALTER TABLE TABLENAME ALTER COLUMN COLUMN4 NVARCHAR (50) NULL

--重命名表:(ACCESS 重命名表,请参考文章:在ACCESS数据库中重命名表)
SP_RENAME '表名', '新表名', 'OBJECT'

SP_RENAME TABLENAME,TABLENAME1,OBJECT

--新建约束:
ALTER TABLE TABLENAME ADD CONSTRAINT 约束名 CHECK ([约束字段] <= \'2000-1-1\')

--删除约束:
ALTER TABLE TABLENAME DROP CONSTRAINT 约束名

--新建默认值
ALTER TABLE TABLENAME ADD CONSTRAINT 默认值名 DEFAULT \'51WINDOWS.NET\' FOR [字段名]

--删除默认值
ALTER TABLE TABLENAME DROP CONSTRAINT 默认值名

--删除SQL SERVER 中的日志,减小数据库文件大小
DUMP TRANSACTION 数据库名 WITH NO_LOG
BACKUP LOG 数据库名 WITH NO_LOG
DBCC SHRINKDATABASE(数据库名)
EXEC SP_DBOPTION \'数据库名\', \'AUTOSHRINK\', \'TRUE\'

--\\\添加字段通用函数
SUB ADDCOLUMN(TABLENAME,COLUMNNAME,COLUMNTYPE)
CONN.EXECUTE(\"ALTER TABLE \"&TABLENAME&\" ADD \"&COLUMNNAME&\" \"&COLUMNTYPE&\"\")
END SUB

--更改字段通用函数
SUB MODCOLUMN(TABLENAME,COLUMNNAME,COLUMNTYPE)
CONN.EXECUTE(\"ALTER TABLE \"&TABLENAME&\" ALTER COLUMN \"&COLUMNNAME&\" \"&COLUMNTYPE&\"\")
END SUB

--检查表是否存在

--判断表的存在:
SELECT * FROM SYSOBJECTS WHERE ID = OBJECT_ID(N'[DBO].[TABLENAME]') AND OBJECTPROPERTY(ID, N'ISUSERTABLE') = 1

--某个表的结构
SELECT * FROM SYSCOLUMNS WHERE ID = OBJECT_ID(N'[DBO].[你的表名]') AND OBJECTPROPERTY(ID, N'ISUSERTABLE') = 1

 

转载于:https://www.cnblogs.com/qianjinyan/p/9267261.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值