Oracle创建修改表单,五个重要约束的创建和修改语法

来源:互联网 发布:淘宝旧杂志回收 编辑:程序博客网 时间:2024/06/11 06:32

登录命令(SQL Plus):用户名/密码
切换账号:connect sys/密码 as sysdba
显示当前用户:show user
查询所有用户:select username from dba_users;
想要登录scott用户必须要解锁,解锁命令:alter user username account unlock, scott默认密码为tiger

创建一个表语法:
create table 表名
( id number(6,0),
username varchar2(20),
userpws varchar2(20),
regdate date);

查询用户创建的所有表单:select * from tab;
查看已创建的表单:desc 表名
修改表单:alter table 表名
增加字段:add 字段名 varchar2(500)
修改字段:modify 字段名 varchar2(300)
删除字段:drop column 字段名
给字段改名(类型不变):rename column 字段名 to 字段名

修改表名:rename 表名 to 表名;

截断表(删除所有表数据):truncate table 表名;

删除表结构:drop table 表名; (删除表结构会进入回收站)
查询回收站:show recyclebin
清空回收站:purge recyclebin

恢复表结构:flashback table 表名 to before drop;

插入数据:insert into 表名 (字段名,字段名….) values (值,值….);

给字段添加默认值:在创建表单时使用default关键字
create table 表单名 (id number(6,0) ,regdate date default sysdate);

修改字段的默认值:alter table 表名 modify 字段名 default 值

在建表时复制其他表的字段值:create table 新表名 as select colunm1,clolunm2….|* from 旧表名

复制其他表插入:inser into 新表 select * from 旧表;

修改表单字段里的值:update 表名 set userpwd=’00000’ where username=’xiaya’;

删除数据语句:delete from 表名 where …..

约束的作用:保证数据的有效性,五个重要约束:非空约束,主键约束,外键约束,唯一约束,检查约束

在创建表示进行主键约束:create table 表名 (id number(6,0) primary key,….
第二种方式:create table 表名 (id number(6,0),…,constraint constraint_name primary key(column1,column2…);

约束查询:desc user_constraints

在修改表时添加主键约束:alter table table_name add constraint constraint_name primary key(column_name1,…);

更改主键名:alter table table_name rename constraint old_name to new_name;

禁用or激活主键:alter table table_name disable|enable constraint constraint_name

删除主键:alter table table_name drop constraint constraint_name;

列级外键约束写法:create table 表名1 (id number(6,0),column_name datatype references 表名2(column_name) );

表级外键约束写法:create table 表名1 (id number(6,0) primary key,column_name1 datatype,column_name2 datatype,constraint fk_name foreign key(column_name1) references 表2(column_name) on delete cascade);
此句含义为:将表1中column_name1字段外键约束给表2的column_name,将此约束命名为fk_name
on delete cascade 可省略,意义为当主表删除一条记录时,从表也跟着删除数据;

修改表时创建外键约束:alter table 表1 add constraint constraint_name foreign key(column_name) references 表2(column_name) on delete cascade);

列级唯一约束:create table 表名 (id number(6,0) unique);
表级唯一约束:create tbale 表名 (id number(6,0) ,constraint un_name unique(id));

检查约束:create table 表名 (id number(6,0) primary key, column_name int check(column_name>0);

格式化字段名:col column_name_old heading column_name_new;
格式化字段长度:col column_name format a10;(10为长度,a为字符)
col column_name format $9999.9;(格式化数字类型)

清除格式化:col column_name claer;

原创粉丝点击