[SQL]修改和删除基本表
修改基本表
SQL语言用alter table语句修改基本表,其一般格式如下:
alter table <表名>
	add <列名> <数据类型> [<列级完整性约束>] |
	drop [constraint] <完整性约束名> |
	drop column <列名> |
	alter column <列名> <数据类型>
说明:
<表名>是要更改的表的名字add字句用于增加新列以及新的完整性约束条件。新增的列不能为not null约束,因为新增加的列一律为空值。drop constraint字句用于删除完整性约束条件。drop column字句用于删除原有的列。当在基本表中删除某一个列时,所有引用该列的视图和约束也一起自动被删除。有的系统规定若删除某一个列时,只有当没有视图和约束引用该列时才能删除,否则拒绝删除。alter column字句用于更改原有列的类型和宽度。有的系统不允许对列名和数据类型进行修改,以免原有基本表中的数据丢失。
例如:
向图书表中增加“出版年份”列,其数据类型为日期型:
alter table 图书 add 出版年份 date;
向借阅表增加“借阅日期<还书日期”的约束条件:
alter table 借阅 add constraint C_JY check (借阅日期<还书日期);
或:
alter table 借阅 add check (借阅日期<还书日期);
删除图书表中图书名称取唯一值的约束
alter table 图书 drop constraint unique(图书名称);
或:
alter table 图书 drop unique(图书名称);
删除图书表中“出版年份”列:
alter table 图书 drop column 出版年份;
将图书表中单价的数据类型改为整形:
alter table 图书 alter column 单价 int;
删除基本表
drop table <表名>
基本表一旦被删除,表中的数据、此表上建立的索引和视图都将自动删除。
有的系统删除基本表后相关的视图定义仍然存在,但是当用户引用这些视图时会报错。
[SQL]修改和删除基本表的更多相关文章
- sql server 笔记(数据类型/新建、修改、删除数据表/)
		
1.数据类型: Character 字符串 / Unicode 字符串 / Binary 类型 / Number 类型 / Date 类型 / 其他数据类型 详解:http://www.w3sc ...
 - Spark SQL 之自定义删除外部表
		
前言 Spark SQL 在删除外部表时,本不能删除外部表的数据的.本篇文章主要介绍如何修改Spark SQL 源码实现在删除外部表的时候,可以带额外选项来删除外部表的数据. 本文的环境是我一直使用的 ...
 - Mysql学习—查看表结构、修改和删除数据表
		
原文出自:http://blog.csdn.net/junjieguo/article/details/7668775 查看表结构 查看表结构可以用语句DESCRIBE或SHOW CREATE TAB ...
 - MySQL的修改和删除数据表字段
		
MySQL的修改和删除数据表字段 写在前面: 数据库存在的意义:数据存储和数据管理. 数据库:行(数据),列(字段) 注意:本页是解决了列的字段问题.下一页是解决行的数据问题. 注意,所有的字段名,最 ...
 - 创建、修改、删除ORACLE表空间
		
//创建表空间 create tablespace MyFirstSpace datafile '/opt/oracle/app/oracle/product/9.2.0/dbs/MyFirstSpa ...
 - Sql Server批量删除指定表
		
--批量删除以test的表开头的表 declare @name varchar(50) while(exists(select * from sysobjects where name like te ...
 - sql server 批量删除数据表
		
SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGO-- =============================================-- Auth ...
 - 05Microsoft SQL Server 表创建,查看,修改及删除
		
Microsoft SQL Server 表创建,查看,修改及删除 创建表 创建普通表 use 数据库名称 go create table 表名称( 列1 ) not null, 列2 ) not n ...
 - 删除指定表的所有索引,包括主键索引,唯一索引和普通索引 ,适用于sql server 2005,
		
原文:删除指定表的所有索引,包括主键索引,唯一索引和普通索引 ,适用于sql server 2005, --删除指定表中所有索引 --用法:declare @tableName varchar(100 ...
 
随机推荐
- 04 jumpserver资产管理
			
4.资产管理: (1)管理用户: 管理用户是资产(被控服务器)上的 root,或拥有 NOPASSWD: ALL sudo 权限的用户, JumpServer 使用该用户来 `推送系统用户`.`获取资 ...
 - 12.10File类
			
要点提示:File类包含了获得一个文件/目录的属性,以及对文件/目录进行改名和删除的方法. 在文件系统中,每个文件都存放在一个目录下.绝对文件名,是由文件名和它的完整路径以及驱动器字母组成.例如,c: ...
 - Linux:linux下解压*压缩tar.xz、tar、tar.gz、tar.bz2、tar.Z、rar、zip、war等文件方法
			
tar -c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:更新原压缩包中的文件 ------------------------------------------ 这 ...
 - Python 脚本退出
			
return:在定义函数时从函数中返回一个函数的返回值,终止函数的执行. os._exit(),sys.exit(),exit(),quit()都能够退出当前执行脚本,差别在于os._exit()直接 ...
 - mysql某建表语句
			
CREATE TABLE `product_info`( `product_id` VARCHAR(32) NOT NULL COMMENT '主键', `product_name` VARCHAR( ...
 - mysql中的条件语句case when/if函数
			
主要知识点为case函数,if函数,ifnull函数,elt函数几部分,主要用于mysql语句中的逻辑判断 待操作的表如下: p.p1 { margin: 0; font: 16px Menlo; c ...
 - 扩大UIPageViewController的点击范围
			
UIPageViewController中的边缘点击手势大概是屏幕的1/6,市面的大多数阅读器点击手势都在1/3以上,或者我干脆想自定义点击的范围,但又不想放弃系统的翻页效果,这时候该怎么做了?其实很 ...
 - 青蛙跳台阶问题(斐波那契数列) python
			
一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法 class Solution: def jump(self,n): if n ==0: return 0 el ...
 - HCNA Routing&Switching之RIP防环机制
			
前文我们了解了RIP的基础概念.RIP的特点.RIP报文格式.RIP度量以及RIP配置认证等相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/150085 ...
 - Java基础00-异常25
			
1. 异常 异常 1.1 异常概述 1.2 JVM的默认处理方案 有一行代码报错,下面的代码就不会执行. 1.3 异常处理 如果程序出现了异常,需要我们自己来处理,因为在实际的开发中,不能因为一处的报 ...