创建,修改和删除表
来源:互联网 发布:ubuntu 光盘安装软件 编辑:程序博客网 时间:2024/05/01 22:54
1、表的创建
(1)创建表,包含非空和默认值约束
包含非空约束的列,当在添加数据时,如果该列值为NULL,则数据库会报错,添加失败。非空约束避免了由于用户的误操作导致的数据不完整性。
(2)向表中添加数据
执行结果:
有结果可知,对于允许为空的字段birthday,在没有插入任何数据的情况下,默认为NULL,插入操作得以正确执行。
对于有默认值的字段,当没有给它设置值时,它被以默认值填充。
2、表的修改
(1)增加新列
当向已有数据的表中添加新列的时候,DBMS默认新列的值为NULL,如果为新列增加非空约束,则必须为它指定默认值。当然,如果表中不存在任何数据,则不存在这个问题。
例如向学生表中增加email字段(此时student表中已经有两条数据记录)
执行的结果是报错,修改为:
执行结果:
(2)删除列
- 在SQL SERVER中,可以直接删除没有任何约束的列。
eg:删除没有任何约束的列birthday
- 在SQL server2000中有非空约束的列的删除必须先删除非空约束,才能删除该列,但是在sql server 2005中,有非空约束的列也可以直接删除。
- 那些赋予默认值,作为主键或者在另外表中作为外键的列则不能删除
eg:企图删除默认值为‘男’的sex 列,执行
alter table student
drop column sex将失败
删除列后,该列的所有数据也被删除了。
(3)修改列
eg1:修改数据允许的最大长度
alter table student
alter column Email char(25)
在这里要注意,一般是增长最大的数据长度,如果是减少最大的数据长度时,如果已有数据的长度大于要减少到的长度,则出于对已有数据的保护,表的修改会失效。
eg2:去掉为空约束
alter table student
alter column sname char(20) null
eg3:改变列的数据类型
alter table student
alter column sno char(5) not null
这种情况要求旧的数据类型必须和新的数据类型兼容。比较常用的是从int型或者decimal型转换成char型。
3、表的删除和重命名
(1)表的重命名
eg:将student表改名为mystudent
sp_rename 'student','mystudent'
eg:重命名表中的列
sp_name 'mystudent.sname','studentname','colume'
eg:删除mystudent表
drop table mystudent
删除表后,该表的所有数据也被删除了。当某表与其他表存在某种关系时,某些DBMS要求先删除这种关联之后,才允许删除该表。
4、数据库的创建、修改和删除
一个例子:
- 创建,修改和删除表
- 创建、修改和删除表
- 创建,修改和删除表
- MySQL 创建、修改和删除表
- MySQL:创建、修改和删除表
- Mysql 创建、修改和删除表
- 第二章 创建、删除和修改表
- MYSQL表的创建,修改和删除
- MySQL-创建、修改和删除表
- MySQL-创建、修改和删除表
- MySQL:创建、修改和删除表
- 创建、修改、删除表
- MongoDB006 创建、删除和修改
- 精通数据库SQL——创建、修改和删除表
- MySQL数据库创建、修改和删除表操作实例
- Day2(11.1):(1)创建、修改和删除表
- 15.创建、删除和修改表的DDL语句
- MySQL数据库操作以及创建、修改和删除表
- Flex的四种判断对象类型的方式 as instanceof is typeof比较
- visual C语言 dll定义及Mfc中调用定义规则
- USACO算法系列三十三——buylow
- 写给自己的开头语
- Unity Built-in Shader详解二
- 创建,修改和删除表
- [poi2009]gas
- 佩服啊
- CSS 表格的典型实例
- 浮点数表示
- ear包和war包的文件组织结构及制作方法
- JAR、WAR、EAR的使用和区别
- SQL优化--使用分析函数(转自:http://www.cnblogs.com/zping/archive/2008/08/06/1261973.html)
- SQL特殊字符处理