使用create语句创建表

create table 表名

(

列名 类型 【null     |     not null】,

列名 类型 【null     |     not null】

)

在一个数据库中表名不允许重复,在同一张表中列名不允许重复,【null     |     not null】表示该列允许为空或非空,默认的情况下是非空的

举个栗子:

create table two
(
id number primary key,
nname varchar2(10) not null,
age number
)

create table productinfo
(
productid varchar2(10),
productname varchar2(20),
productprice number(8,2),
quantity number(10),
category varchar2(10),
desperation varchar2(1000),
origin varchar2(10)
)

使用Alter语句修改表

alter table 表名

add  列名| modify 列名|drop column 列名

modify 是修改一个已经存在的列名

举几个栗子:

alter table two
add sex char(3);

alter table two
modify nname varchar2(20);

alter table two
drop column sex;

drop table two;                       删除表

约束:

主键约束:每个数据表中只有一个主键约束,但是一个主键约束可以由数据表中多个列组成,关键字:primary key

create table two
(
id number primary key,
nname varchar2(10) not null,
age number
)

create table two
(
id number,
nname varchar2(10) not null,
age number,
primary key(id)
)

两种写法都可以

当然也可以用alter语句添加主键约束

alter table two
add constraint pk_name primary key(id);                                        ps:pk_name是约束名

移除约束

alter table two
drop constraint pk_name;

外键约束:可以保证使用外键约束的数据库列与引用的主键约束的数据列一致,外键约束在一个数据表中可以有多个

外键约束要在创建表的语句后面加上如下语句:

alter  table 表名

constraint ppk_name foreign key(nname) references 表名(表中的列) on delete cascade                   ps:on delete cascade 保证主键对应字段被删除时,外键对应字段也被删除

修改表结构时添加外键约束:

add constraint ppk_name foreign key(nname) references 表名(表中的列) on delete cascade

移除外键约束与一处主键约束同样

check约束:检查约束,规定每一个列能够输入的值,以保证数据的正确性

创建check约束可以在创建表的语句后面加上如下操作:

constraint constraint_name check(condition)

修改表结构时添加check约束

alter table 表名

add constraint constraint_name check(condition)

移除check约束:

alter table 表名

drop constraint constraint_name;

unique约束:唯一约束,这个设置在表中输入大的字段值都是唯一的,和主键约束非常相似,不同的是,unique约束在一张表中可以有多个

在创建表的语句后面加上如下语句即可以创建unique约束:

constraint constraint_name unique(列名)

在修改表结构时添加unique约束:

alter table 表名

add constraint constraint_name unique(列名)

移除unique约束:

同上

not null约束:非空约束,子啊创建表时添加非空约束,确保字段一定有输入值

创建not null 约束直接在字段后面直接写not null即可

修改表结构时添加not null约束:

alter table 表名

modify  列名 not null;

添加数据insert:

insert into 表名(列名1,列名2,……) values(值1,值2,……);

insert into 表名 values(值1,值2,……);

两种方法都可以,列名与值要一一对应,如果没有指明列名,那么表中有多少列都要按顺序添加顺序,没有非空约束的列可以用null值添加

也可以通过其它表来添加数据,不过要注意两张表列个数,数据类型要一致,否则会出现错误

insert into 表名(列名1,列名2,……) select 值1,值2,…… from 表2;

另一种创建表的方式:

create table 表名 as select 列名1,列名2,…… from 表2;

update修改数据:

update 表名 set  列名=新值,…… where 条件;

delete删除数据:

delete from 表名  where 条件                                                   切记不加条件就是删除全部数据,这是个灾难!

其他数据操纵语句:

truncate table 表名                        无条件删除表中全部记录,比delete更快一点

最新文章

  1. oracle表大小
  2. SqlServer 数据库 引擎优化使用(六)
  3. PHP 文件与文件夹的创建和删除操作
  4. 浏览器中Javascript的加载和执行
  5. [转载]C# Random 生成不重复随机数
  6. ASP.NET- Web.Config配置大文件上传
  7. eclipse 404以及tomcat failed to start错误
  8. Python安装coverage.py
  9. nodejs抓取数据二(列表解析)
  10. (八)javaScript对象简介
  11. lua 数组
  12. dubbo filter实现接口认证springboot idea
  13. linux系统安装redis
  14. Robot Framework - 5 - 创建测试数据
  15. web-day10
  16. Linux gcc/g++链接编译顺序详解
  17. linux 定时备份
  18. MSYS2环境搭建
  19. a4纸尺寸像素大小
  20. POJ 3667 线段树区间合并

热门文章

  1. redis,memcached,mongodb之间的区别
  2. Django-缓存问题无法创建表
  3. 关于Map的问题
  4. TCP学习
  5. 软件开发中什么是CI/CD
  6. Nginx-HTTP之ngx_http_top_header_filter
  7. <JavaScript>数组的sort()方法中比较函数是怎么工作的
  8. 用JSON文本动态创建DataGrid
  9. 魔法方法 __slots__ 方法
  10. jdk1.8 HashMap源码分析(resize函数)