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
SQL实现新增表,表名更改,列名更改,约束更改等的更多相关文章
- Oracle表名、列名、约束名的长度限制
Oracle数据库版本11.2.0.1.0 Oracle表名.列名.约束名的长度限制 1.查询用户所有的表 select * from USER_TABLES; 2.查询用户所有表的列 select ...
- 数据可视化之PowerQuery篇(七)Power Query应用技巧:批量更改列名
https://zhuanlan.zhihu.com/p/130460772 今天分享一个PowerQuery的小技巧,导入到PowerBI中的数据,如果想要更改数据的列名,可以在PQ编辑器中直接双 ...
- ylb:sql语句重命名表名和列名
ylbtech-SQL Server:SQL Server-sql语句重命名表名和列名 sql语句重命名表名和列名 ylb:sql语句重命名表名和列名 返回顶部 一.更改数据库名 sp_rena ...
- Hive分区表新增字段及修改表名,列名,列注释,表注释,增加列,调整列顺序,属性名等操作
一.Hive分区表新增字段 参考博客:https://blog.csdn.net/yeweiouyang/article/details/44851459 二.Hive修改表名,列名,列注释,表注释, ...
- 【SQL Server】sql server更改了数据表的字段/新增数据表的字段 无法保存
sql server更改了数据表的字段/新增数据表的字段 无法保存 解决方法:进入 工具-->选项-->Designers-->表设计器和数据库设计器-->取消勾选 即可
- SQL中如何修改数据库名、表名、列名?
文章目录 1.SQL中如何修改数据库的名字? 2.SQL中如何修改表的名字? 3.SQL中如何修改列的名字? 4.SQL中如何修改列的数据类型?(未完成,待续) 1.SQL中如何修改数据库名? 语法 ...
- MySQL数据库表名、列名、别名区分大小写的问题
MySQL在Linux下数据库名.表名.列名.别名大小写规则是这样的: 1.数据库名与表名是严格区分大小写的: 2.表的别名是严格区分大小写的: 3.列名与列的别名在所有的情况下均是忽略大小写的: 4 ...
- JPA中自动使用@Table(name = "userTab")后自动将表名、列名添加了下划线的问题
一.问题 JPA中自动使用@Table(name = "userTab")后自动将表名.列名添加了下划线的问题,如下图: 二.解决 在application.properties文 ...
- mybatis动态传入表名、列名
原文:http://luoyu-ds.iteye.com/blog/1517607 要实现动态传入表名.列名,需要做如下修改 添加属性statementType=”STATEMENT” (可省略) 同 ...
- SQL-修改表名,列名
sql 1.sql server修改表名.列名 修改表名:EXEC sp_rename ‘原有表名’, '新表名'; 修改列名:EXEC sp_rename ‘表名.[原有列名]’, ‘新列名' , ...
随机推荐
- Java 7代码层面上的更新
Java 7已经完成的7大新功能: 1 对集合类的语言支持: 2 自动资源管理: 3 改进的通用实例创建类型推断: 4 数字字面量下划线支持: ...
- AnsiString和各种数据类型间相互转换 [数据转换]
//Ansistring 转 char void __fastcall TForm1::Button1Click(TObject *Sender) { AnsiString Test = " ...
- 读书--编写高质量代码 改善C#程序的157个建议2
重新从图书馆将这本书借出来,看一遍似乎记不住,这次打算看一点就记录点,记录下自己容易忘记的知识点,便于记住. 建议1:正确使用字符串: 1 string str1= "hellowor ...
- 优化改良版:数组,List,等集合需要加逗号或其它符合转成字符串
大家经常需要数组加逗号拼接成字符串的情况传统作法就是写for,foreach拼接, 现给出优化改良版数组,List,等集合需要加逗号或其它符合转成字符串方法: List<string> l ...
- php深入学习
关于PHP程序员解决问题的能力 http://rango.swoole.com/archives/340 深入理解PHP内核 by xuhong大牛 http://www.php-internals. ...
- UVM中的driver组件
一般UVM环境中的Driver组件,派生自uvm_driver. uvm_dirver派生自uvm_component. class uvm_driver #(type REQ = uvm_sequ ...
- HttpClient配置SSL绕过https证书
https://blog.csdn.net/irokay/article/details/78801307 HttpClient简介 HTTP 协议可能是现在 Internet 上使用得最多.最重要的 ...
- MockWebServer--环境
MockWebServer是一个可脚本化的用于测试HTTP客户端的Web服务器.主要用于测试你的应用在进行HTTP.HTTPS请求时是否按照预期的行为动作.使用该工具,你可以验证应用的请求是否符合预期 ...
- MySQL数据库----安装
一.基础部分 1.数据库是什么 之前所学,数据要永久保存,比如用户注册的用户信息,都是保存于文件中,而文件只能存在于某一台机器上. 如果我们不考虑从文件中读取数据的效率问题,并且假设我们的程序所有的组 ...
- c++第十四天
<c++ primer, 5E> 第91页到第94页,笔记: 1.vector支持的操作. v.empty().v.size().v.push_back(t).v[n] 2.试图通过下标访 ...