1003.oracle简单的CURD

select column_name, column_name from table_name where ..
insert into table_name values (, , ) where..
   insert into table_1_name select * from table_2_name (两个表的结构必须一致)
update table_name set column_1_name = values, column_2_name = values where 
④ delete from table_name where ...
 
1. select 查询语句
select * from emp;
select loc from dept; 在表中查询列
0
0
 
select * from emp where sal>2000; 查询工资大于2000的员工
select * from emp where sal>2000 order by sal; 按工资由高到低排序工资大于2000的员工
select * from emp where sal> 2000 order by sal desc; 按工资由低到高排序工资大于2000的员工
select * from user_objects;    --查看测试账号下面有哪些对象
数据字典:user_objects,dba_users
主建:描述对象唯一的属性
0
 
2. insert插入语句
创建表格 : create table test as select * from emp; --复制表格
select * from test;
insert into test values(8000,'道森Oracle','培训',null,sysdate,30000,null,10);--所有列明确指定 常用
insert into test(empno,ename,sal) values(8000,'道森Oracle','培训',sysdate,30000,10);--指定要插入的列
批量插入(表结构要一样,查看表结构” desc 表名 “)
insert into test select * from emp;   
用工具插入
select * from test for update;会把test表的所有行锁住
(select * from test where empmo=8001 for update;只锁指定的行)
   
插入表格
执行后要提交(commit)   然后运行查询语句才能看到
上箭头可以便捷翻出上一条sql语句。
 
DML语句:insert  update
 
3. update  更新语句
更新数据都要备份
更改指定数据
update test set sal=10000 where empno=7369;
0
       更新多个列:
        update test set job="MANAGER",sal=15000 where empno=7369;
        
0
 给所有员工涨500
 update test set sal=sal+500;
 
4. delete 删除语句
删除的时候要备份或者加限定,不要删错了。
delete test where sal<2000;
0
delete test where ename is null;
0
select rowid, a.* from test a; ---rowid 是某一行的物理地址, 类似你家的地址
0
truncate语句DDL,常规手段不可恢复
truncate table test;数据被清空了。
 
备份语句:create table test_bkp as select * from test;
 
delete与truncate的区别?
前者删数据可以恢复,后者删数据补课恢复,并且删除大表的速度比前者快。
posted @ 2021-01-10 02:30  bufuzhou  阅读(86)  评论(0编辑  收藏  举报