Oracle表操作-创建及增删改查

时间:2021-07-26 22:39:31

数据类型;

1、CHAR:定长字符类型,默认长度是1,最长不超过2000字节。

2、CARCHAR2(length):可变字符类型,默认长度是1,最长不超过4000字符。

3、NUMBER(P,S):可存整数和浮点数。p表示数字的最大位数(如果是小数包括整数部分和小数部分和小数点,p默认是38为),s是指小数位数。

4、date:存储时间,8位长度。

Alter tables 表名 add constraint 表名_约束名 primary key 列名

Alter tables 表名 add constraint ck_表名_列名 check (列字段名 >=0 and 列字段名<=3)

Alter tables 表名 add constraint un_列名 unique 列名

表:

表名和列名:由字母、数字、下划线组成,首字符必须为字母;表名唯一不可重复。

列:相当于EXCEL的每一列。

表名、列名命名要做到见名知义。

创建表:

SQL语句:

Create table 表名

(

字段1 数据类型1 [not null/primary key],

字段2 数据类型2,

……

字段n 数据类型n //注意最后一个没有逗号。

); //最后有一个分号“;”

示例:使用用户huangming,创建下表。

Create table infos //表名为:infos

(

id number(2), //ID 为整数,2位

name varchar(20), //name 为可变字符类型,长度20

telenum number, //telenum 为NUMBER类型

sex char(20),

nianling number

);

具体步骤:

1、 用户登陆:sqlplus huangmin/huangmin

2、 SQL语句创建表:

Create table infos

(

id number(2),

name varchar(20),

telenum number,

sex char(20),

nianling number

);

3、退出:exit

如下图所示:

Oracle表操作-创建及增删改查

插入数据:

SQL语句:insert into 表名(列名1,列名2,…,列名N) values(值1,值2,…,值N);

注意事项:

1、列名对应的数据类型、数量、顺序与值的数据类型、数量要匹配。

2、如果这个列数据类型是number,值就直接写值

3、如果这个列数据类型是char,varchar2字符类型, 值的表示需要用单引号。

4、如果这个列数据类型是date,写值时就用to_date转化

示例:在表infos中插入数据。

Insert into infos(id) values(1);

Oracle表操作-创建及增删改查

Insert into infos(id,name) values(2,’huangdandan’);

Oracle表操作-创建及增删改查

Insert into infos(id,telenum) values(3,1234567890);

Oracle表操作-创建及增删改查

Insert into infos(id,sex) values(4,man);

Oracle表操作-创建及增删改查

Insert into infos(id,nianling) values(5,45);

Oracle表操作-创建及增删改查

Insert into infos(id,sex) values(6,girl);

Oracle表操作-创建及增删改查

保存数据:commit;

Oracle表操作-创建及增删改查

更改表中列的数据类型:

SQL语句:alter table 表名 modify 列名 数据类型;

查询数据库:

SQL语句:select /列名1,列名2,列名3,…列名n from 表名;

注意事项:

1、
:表示表中的所有数据。

2、列名的书写顺序决定了查询结果列的显示顺序;

3、表名可以是一张存在的表,也可以是SQL语句处理后得到的一个表(结果)。

示例:查询表infos的所有数据。

SQL语句:select *from infos;

结果如下图所示:

Oracle表操作-创建及增删改查

条件查询:

SQL语句:select语句+Where 条件;

单一条件查询:

示例:查询ID为1的数据。

SQL语句:select *from infos where id=1;

结果如下图所示:

Oracle表操作-创建及增删改查

多条件查询:

使用逻辑运算符and、or、not将多条件组合起来。

排序:

SQL语句:asc/desc;

升序:asc

降序:desc

SQL语句:select语句+(where语句)+Order by 列名 asc/desc ;

SQL语句:select语句+ Order by 列名 asc/desc;

SQL语句:asc/desc 表名;

示例:查询将表infos按ID升序排序。

SQL语句:select *from infos Order by id asc;

如下图所示:

Oracle表操作-创建及增删改查

降序排列:

SQL语句:select *from infos Order by id desc;

如下图所示:

Oracle表操作-创建及增删改查

修改表中数据:

SQL语句:updater 表名 set 列名1=值1,列名2=值2,…列名N where 条件;

示例:修改表中ID为6的名字为 “mayun”。

SQL语句:update infos set name=’mayun’ where id=6;

如下图所示:

Oracle表操作-创建及增删改查

SQL语句:Select *from infos;

查看数据是否已被修改。

Oracle表操作-创建及增删改查

数据已被修改。

删除表中的数据:

SQL语句:delete from 表名 where 条件;

delete from 表名; //此时会将表中的所有数据删除。

示例:删除表infos中ID为6的数据。

SQL语句:delete from infos where id=6;

如下图所示:

Oracle表操作-创建及增删改查

查询所有数据,验证是否已经删除ID=6的数据,

SQL语句:Select *from infos;

Oracle表操作-创建及增删改查

如上图所示,ID=6的数据已被删除。

示例:删除表中的所有数据。

SQL语句:delete from infos;

如下图所示:

Oracle表操作-创建及增删改查

查询所有数据,验证是否已经删除所有数据,

Select *from infos;

Oracle表操作-创建及增删改查

所有数据已经被删除。

删除表:

SQL语句:drop table 表名;

示例:删除infos表。

SQL语句:drop table infos;

如下图所示:

Oracle表操作-创建及增删改查

SQL语句:Select *from infos;

Oracle表操作-创建及增删改查

如上图所示,表已被删除。