数据库——Oracle(2)
1 插入语句(insert):
1) 往表中所有的列值都插入列值
SQL> desc person2;
名称
ID
NAME
案例:往person2表中任意的插入3条数据
insert into person2 values(10,'刘备');
insert into person2 values(11,'曹操');
insert into person2 values(12,'张辽');
SQL> desc person3;
名称
ID
NAME
JOB
往person3中插入任意的3条数据
insert into person3 values(10,'钱钟书','文学家');
insert into person3 values(11,'李清照','词人');
insert into person3 values(12,'郭沫若','作家');
2) 往指定的列插入列值
格式:
insert into 表名(列名1,列名2,列名3...)
values(列值1,列值2,列值3...)
a) 表名()中列名必须要跟values中列值一一对应。
b) 必须要给主键所在的列插入列值。
SQL> desc person4;
名称
ID
NAME
ADDRESS
AGE
insert into person4(id) values(1);
insert into person4(id,name) values(2,'张无忌');
往person4表任意插入3条数据
insert into person4(id,address) values(10,'常遇春');
insert into person4(id,name,age) values(11,'李文忠',27);
insert into person4(id,age) values(12,39);
2 修改语句(update):
格式:
update 表名 set 列名1 = 该列新值,列名2 = 该列新值...
where 条件
根据where条件修改表中的数据,如果没有where条件,修改表中所有的数据。
ID NAME ADDRESS AGE
1
2 张无忌
10 常遇春
11 李文忠 27
12 39
update person4 set name = '徐达',address = '漠北'
where id = 10;
案例:修改person4表中年龄是39岁信息,把name改为武则天,地址改为长安,年龄改为20
update person4 set name = '武则天',address = '长安',age = 20
where age = 39;
案例:修改person4表中姓名是李文忠的信息,把年龄改为30,地址改为北京,id改为20
update person4 set age = 30,address='北京',id=20
where name = '李文忠';
案例:修改person4表中所有人的年龄都改为30
update person4 set age =30;
ID NAME JOB
--- ------------------------ ------
10 钱钟书 文学家
11 李清照 词人
12 郭沫若 作家
案例:修改person3表中job是作家的信息,把姓名改为冰心,id改为20
update person3 set name = '冰心',id = 20
where job = '作家';
案例:修改person3表中姓名是李清照,把编号改为100,姓名改为辛弃疾
update person3 set id = 100,name = '辛弃疾'
where name = '李清照';
3 删除语句
1)delete删除
格式:
delete from 表名 where 条件
根据where条件删除对应表中的数据,如果没有where条件删除表中所有的数据。
案例:删除person3表中姓名是辛弃疾的信息
delete from person3 where name = '辛弃疾';
案例:删除person3表中职位是作家的信息
delete from person3 where job = '作家';
案例:删除person3表中编号id是10的信息
delete from person3 where id = 10;
案例:删除person2中所有的数据
delete from person2;
2) truncate删除:直接删除表中所有的数据,速度很快,并且删除的数据不能在被还原。
truncate table 表名
truncate table person1;
案例:删除person4表中所有的数据
truncate table person4;
4 删除表:
drop table 表名;
drop table person4;
案例:删除person1,person2,person3
drop table person1;
drop table person2;
drop table person3;
5 简单没有条件的查询语句
1)查询表中所有的数据
格式:
select * from 表名
案例:查询emp,dept,salgrade表中所有的数据
select * from emp
select * from dept
select * from salgrade
2)查询表中某些列的所有列值
格式:
select 列名1,列名2,列名3...from 表名
select empno,ename,sal from emp
案例:查询emp表中员工的姓名,职位,工资,入职时间
select ename,job,sal,hiredate from emp
案例:查询emp表中员工的编号,姓名,工资,奖金以及入职的时候和所属部门的编号
select empno,ename,sal,comm,hiredate,deptno
from emp
案例:查询dept表中部门的名称和地址
select dname,loc from dept
6 distinct :去掉重复的列值
案例:查询emp表中员工所在部门的编号
select distinct deptno from emp
案例:查询emp表中员工有哪些职位
select distinct job from emp
7 别名:给表或者列起别名。
1)给列起别名
a)使用as
格式:
select 列名1 as 别名1,列名2 as 别名2...
from 表名
select empno as 员工编号,ename as 员工姓名,job as 职业
from emp
案例:查询emp表中员工的姓名,职位,工资,入职时间,上级领导编号,对查询返回的列起别名
select ename as 员工姓名, job as 职位,sal as 工资,hiredate as 入职时间,mgr as 领导编号
from emp
案例:查询dept表中所有部门的信息,对查询返回的列都起别名
select deptno as 部门编号,dname as 部门名称,loc as 部门地址
from dept
b)使用空格给列起别名
格式:
select 列名1 别名1,列名2 别名2,列名3 别名3...
from 表名
select empno 员工编号,ename 员工姓名,mgr 上级经理编号
from emp
案例:查询emp表中员工的姓名,职位,工资,奖金,入职时间,对查询返回的列起别名
select ename 姓名,job 职位,sal 工资,comm 奖金,hiredate 入职时间
from emp
2)给表起别名:在多表连接查询中使用,为每一张表起别名,通过别名指向对应表中列,避免出现多张表中列名一致,无法确定到底查询的哪张表中的列。
格式:
select 别名.列名1,别名.列名2,别名.列名3...
from 表名 别名
select e.empno,e.ename,e.job,e.hiredate
from emp e
数据库——Oracle(2)的更多相关文章
- Oracle实例和Oracle数据库(Oracle体系结构)
--========================================== --Oracle实例和Oracle数据库(Oracle体系结构) --==================== ...
- 【转载】Oracle实例和Oracle数据库(Oracle体系结构)
免责声明: 本文转自网络文章,转载此文章仅为个人收藏,分享知识,如有侵权,请联系博主进行删除. 原文作者:Leshami 原文地址:http://blog.csdn.net/ ...
- Oracle 数据库(oracle Database)Select 多表关联查询方式
Oracle数据库中Select语句语法及介绍 SELECT [ ALL | DISTINCT ] <字段表达式1[,<字段表达式2[,…] FROM <表名1>,<表名 ...
- spring BasicDataSource 数据源配置 sqlserver数据库 oracle数据库 mysql数据jdbc配置
spring BasicDataSource 数据源配置 sqlserver数据库 oracle数据库 mysql数据jdbc配置 jdbc.properties 文件信息如下: ---------- ...
- 各种数据库(oracle、mysql、sqlserver等)在Spring中数据源的配置和JDBC驱动包----转
在开发基于数据库的应用系统时,需要在项目中进行数据源的配置来为数据 库的操作取得数据库连接.配置不同数据库的数据源的方法大体上都是相同的,不同的只是不同数据库的JDBC驱动类和连接URL以及相应的数据 ...
- JDBC(用Eclipse操作数据库Oracle)的基础操作集合
JDBC: JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编 ...
- [数据库]Oracle和mysql中的分页总结
Mysql中的分页 物理分页 •在sql查询时,从数据库只检索分页需要的数据 •通常不同的数据库有着不同的物理分页语句 •mysql物理分页,采用limit关键字 •例如:检索11-20条 selec ...
- Ubuntu16.04下安装数据库oracle客户端
在Ubuntu16.04下安装oracle数据库客户端,使Django项目连接到远程Oracle数据库. 1.下载oracle客户端安装包: 进入官网http://www.oracle.com/tec ...
- 不同数据库oracle mysql SQL Server DB2 infomix sybase分页查询语句
在不同数据库中的使用的分页查询语句: 当前页:currentpage 页大小:pagesize 1. Oracle数据库 select * from (select A.*,rownum rn fro ...
- SpringAccess数据库(oracle)构造
陈科朝:http://blog.csdn.net/u013474104/article/details/44279309 ================ 1.spring 对数据库訪问的支持 当我们 ...
随机推荐
- python入门踩坑
问题1:ImportError: No module named requests 解决:一般报这种错误就是目前还没有这个方法的类库,需要下载或在升级类库.打开cmd命令,输入python -m pi ...
- kubernetes 简单 hello world nginx svc deployment
1.nginx svc deployment [root@k8s k8s4nginx]# cat deploynginx.yaml ################################# ...
- day36 joinablequeue、多线程理论、多线程的两种使用方式、守护线程、互斥锁、死锁、递归锁、信号量
1.joinablequeue队列 joinablequeue与queue一样,也是一种队列,其继承自queue,也有queue中的put 与get 方法,但是在joinablequeue中有自己的 ...
- Docker不完全使用指南
Docker官方文档:https://docs.docker.com/ 神马是Docker? Docker可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的容器. 开发者在笔记本上编译测试通过 ...
- Spring之一:IoC容器体系结构
温故而知心. Spring IoC概述 常说spring的控制反转(依赖反转),看看维基百科的解释: 如果合作对象的引用或依赖关系的管理要由具体对象来完成,会导致代码的高度耦合和可测试性降低,这对复杂 ...
- 用三台虚拟机搭建Hadoop全分布集群
用三台虚拟机搭建Hadoop全分布集群 所有的软件都装在/home/software下 虚拟机系统:centos6.5 jdk版本:1.8.0_181 zookeeper版本:3.4.7 hadoop ...
- Java实现链队
一.分析 队列是一种先进先出的线性表,它只允许在表的一端进行插入,而在另一端删除元素.允许插入的一端称为队尾,允许删除的一端称为队头. 链队是指采用链式存储结构实现的队列,它的基本操作如下: 1.初始 ...
- PHP给图片添加文字水印实例
PHP给图片添加文字水印实例,支持中文文字水印,是否覆盖原图,自定义设置水印背景色.文字颜色.字体等. 水印类water.class.php var $Path = "./"; / ...
- raspberrypi 树莓派 内核编译
相关版本信息 硬件:树莓派 2b 目标系统: linux 编译环境:ubuntu 14.4 32bit 用户路径:/home/hi/ 安装交叉编译链 cdmkdir pi/kernelcd pi/ke ...
- X86逆向3:通过修改关键CALL破解
软件逆向第一课中我们通过爆破的方式直接破解了程序的登录限制,但这一种方式很不合理,因为你只是破解了登录这一处的验证,如果程序内部还有其他的验证那么你需要再次爆破第二个验证,显然这种方式是很烦人的,如果 ...