oracle数据库----SQL语句的实践(应用实例)

创建表工资表salary,包括员工号emp_id,员工名emp_name,员工月基本工资monthsal,员工月总发工资totalsal.

create table salary(

emp_id number,

emp_name varchar2(20),

monthsal number,

totalsal number

);

向表中插入数据,注意数据类型的一致性,且顺序要一一对应,

insert into salary(emp_id,emp_name,monthsal,totalsal) values (101,'李丽',2000,3000);

插入的101对应emp_id,李丽对应emp_name,以此类推。以下为插入的简写,省略了salary的属性列,则必须插入是所有属性列的值,一一对应。

insert into salary values (103,'赵云',5000,7000);

insert into salary values (105,'赵云',4000,5500);


查看salary表数据

select * from salary;

修改表中数据,将员工号emp_id为105的员工的姓名改为“欧阳佩”,

update salary set emp_name='欧阳佩' where emp_id=105;

此处emp_id=105的105没加引号,因为属性列emp_id的数据类型为number,number【(m,n)】类型用于存储整数和实数。m表示数值的总位数,也就是精度,取值范围为1到38,默认为38;n表示小数位数,默认值为0。

select * from salary;


删除monthsal列

alter table salary drop column monthsal;


增加列,为方便起见,在此增加刚刚删除的monthsal列,number改为

alter table salary add monthsal number(20);

这样增加了monthsal后,之前插入的数据不存在了,在此更新monthsal的数据

update salary set monthsal=2000 where emp_id=101;

update salary set monthsal=5000 where emp_id=103;

update salary set monthsal=4000 where emp_id=105;


修改列名。将列monthsal重新命名为month,命名后数据类型不变。还是number(20)

alter table salary rename column monthsal to month;


修改列属性。将列month的数据类型改为number。

alter table salary modify month number;


可以修改表的名字

rename salary to sal;


查看表结构,修改后的表名为sal

desc sal;


查看当前用户拥有的表

select table_name from user_tables;

将表名改为原来的salary

rename sal to salary;

删除表中数据。 用delete而不是drop。delete只是删除表的数据,表的结构还存在。但是drop删除的是整个表(包括了数据和表的结构都被删除)

delete from salary;

drop table salary;