Oracle
Bonjour_Yvonne
这个作者很懒,什么都没留下…
展开
-
数据库表的创建
数据库表--设计要求:建立一张用来存储学生信息的表,表中的字段包含了学生的学号、姓名、年龄、入学日期、年级、班级、email等信息--并且为grade指定了默认值为1,如果在插入数据时不指定grade的值,就代表是一年级的学生create table student(stu_id number(10),name varchar2(20),age number(3),hiredate date,grade varchar2(10) default 1,classes varchar2(10原创 2021-02-01 15:31:43 · 858 阅读 · 0 评论 -
数据库的事务
–事务:表示操作集合,要么全部成功,要么全部失败–事务的开始取决于一个DML语句事务的结束: 1、正常的commit(使数据修改生效)和rollback(将数据恢复到上一个状态) 2、自动提交,但是一般情况下要将自动提交关闭,因为效率太低 &n原创 2021-02-01 09:58:19 · 88 阅读 · 0 评论 -
视图、序列、DML
--创建视图--如果普通用户第一次创建视图提示没有权限,要使用管理员去修改权限--使用grant create view to scott;create view v_emp as select * from emp where deptno = 30;--视图的使用select * from v_emp;--向视图中添加数据insert into v_emp(empno,ename)values(1111,'values');select * from v_emp;--非只读视图可以通过原创 2021-01-31 14:19:23 · 129 阅读 · 0 评论 -
Oracle中的join语法、子查询及行转列
join语法--cross join 等同于92语法中的笛卡尔积select * from emp cross join dept;--natural join 相当于是等值连接,但是注意,不需要写连接条件,会从两张表中找到相同的列做连接,当两张表中不具有相同的列的时候,会进行笛卡尔积操作--自然连接和92语法中国的自连接没有任何关系select * from emp e natural join dept d;--on子句,可以添加任意的连接条件--相当于92语法中的等值连接select原创 2021-01-29 21:04:29 · 647 阅读 · 1 评论 -
Oracle函数和多表连接
/*组函数又称为聚合函数,输入多个值,最终只会返回一个值组函数仅可用于选择列表或查询到额having子句单行函数输入一个值,输出一个值*/--函数的测试--查询所有员工的薪水总和select sum(sal) from emp;--查看表中有多少条记录select count(*) from emp;字符函数--字符函数--concat:表示字符串的额连接,等同于||select concat('my name is ',ename) from emp;--将字符串的首字母大原创 2021-01-28 14:22:40 · 221 阅读 · 0 评论 -
Oracle SQL语句
--给表添加注解comment on table emp is'雇员表';--给列添加注解comment on column emp.ename is'雇员姓名';--查询雇员表中部门编号是10的员工select empno,ename from emp where deptno=10;--distinct去重select distinct deptno from emp;--去重也可以针对多个字段,多个字段中只要有一个字段不匹配就算是不同的记录select distinct dept原创 2021-01-27 20:48:03 · 111 阅读 · 0 评论