1、数据表的管理
(1)修改表
①Desc zl;查看zl这个表里的结构
②alter table zl add(classId number);往zl里面添加classId列
③alter table zl modify(name varchar2(32));把name这一列的数据类型修改为varchar2(32)
④alter table zl drop column fellowship;将表中的fellowship这一列删除
⑤rename zl to students;修改表名,将zl修改为students
2、增删改查(curd)
(1)Insert 增
语法:insert into [表名](列名,列名,列名...) values(列值,列值,列值...);
例子Insert into zl (id) values(1);往zl的id这一列插入一个数据1
①插入的数据要与字段数据类型相同
②数据的大小要在数据类型大小范围之内
③字符和日期型数据要包含在单引号中
④插入空值(不指定或insert into zl (id) values (null); )往id这一列插入空值
⑤如果给表的每列都添加值,则可以不带列名
例子:zl表有id、name、age三列
Insert into zl valuse(1,’zhangsan’,’20’);不加id、name、age这也是正确的
(2)Update 更新
语法:update [表名] set [列名=‘值’] where 条件;
例子update zl set id='1' where name='lisi';将name等于lisi的行id改为1
Update zl set id=id*2;将id改为原来的2倍,不加where表示对整个表生效
Update zl set felloship=10 where fellowship is null;将zl表中fellowship为空的都改为10
(3)Delete 删除
语法:delete from [表名] where [条件];删除所有记录,表结构还在,可恢复
①Delete from zl where name=‘lisi’;删除zl表中name=lisi的那一行;
注意,如果不使用where条件,将删除表中的所有数据
恢复:
Savepoint aa;设置保存点,删除数据之前设置
Rollback to aa;使用delete命令删除的数据可以恢复
②truncate table [表名]; 删除表中的所有记录,但不删除表结构,速度快,但是无法回滚
③drop table [表名]; 删除表的结构和数据
(4)Select 查询语句
语法:select [distinct] *|{列名1,列名2...} from 表名 [where {条件}];
说明: “[]”里的表示可选,“|”表示或,“{}”里的为必需项
Distinct作用是取消重复行(返回的数据完全一样),*代表所有列,where后面接条件
例子:select id,sex from zl where name=”lisi”;
3、||的用法 连接符
①Select 'aaa' || ',' || 'bbb' || ',' || 'ccc' from dual
结果:
aaa,bbb,ccc
②select empno|| ' 牛逼 ' ||job from emp where sal='3000' or sal='5000';
EMPNO||'牛逼'||JOB
---------------------------------------------------------
7788 牛逼 ANALYST
7839 牛逼 PRESIDENT
7902 牛逼 ANALYST