二、Oracle 数据库基本操作
一。oracle常用数据类型
数字:number(p,s) p表示数字的长度包括小数点后的位数,s表示小数点后的位数
固定长度字符:char(n):n表示最大长度,n即是最大也是固定的长度,当数据不满长度则以空格补满
可变长度字符:varchar2(n):n表示最大长度
日期类型:date精确到毫秒
blob:大字段数据类型
二。建表语句
注意:主键是唯一且不为空,能唯一标识一条数据的独立性。通常没有任何业务意义,只用来标识数据的唯一性
create table student(
stu_id number(8,0) primary key,
stu_name varchar2(30),
stu_age number(3,0),
stu_sex char(3),
stu_birthday date
)
三。主外键关联
--给班级表添加一个字段
alter table CLASSINFO add school_id number;
--创建外键字段
alter table STUDENT
add constraint fk_stu_class foreign key (CLASS_ID)
references classinfo (CLASS_ID);
--删除表
drop table 表名
--创建,修改,删除表,统称为数据库定义语言DDL
注意:外键约束:
1.在子表中无法添加主表还没有的数据
2.子表如果有相应记录,主表不能删除
四。数据库操作语言DML
--插入数据的语句
insert into student(stu_id,stu_name,stu_age,stu_sex,stu_birthday) values (1,'章三班',90,'男',sysdate)
insert into student values(1,'张三',22,'1',sysdate)
--delete from 表名 where 条件
例子:delete from student where stu_id=1
--修改数据
update 表名 set 字段名=值,字段名=值 .... where 条件
--查询
select 字段名 from student where 条件
五。数据库定义语言
create 、alter、 drop 、rename、 truncate
truncate:截断表数据,作用是一次性删除表中所有数据,是一个一次性事物,不能回滚,删除效率远高于delete
六。事物控制语言
commit:提交事物
rollback:回滚事物
savepoint:设置回滚点
七。数据控制语句
grant 权限 to 用户名 -- 赋予权限
revoke 权限 from 用户名 -- 撤销权限
练习:
1.创建一张学员信息表和一张班级信息表。思考这两张表如何关联起来
2.创建学校信息表。思考学校和学员和班级的关系。怎么关联
例子1:
--对数据的增删改查
--新增数据
insert into student(stu_id,stu_name) values(1,'张三')
insert into student values(2,'李四',20,'男',sysdate) --查询数据
select * from student --删除数据
delete from student where stu_id=1 --修改数据
update student set stu_name='小李子',stu_sex='女' where stu_id=2
例子2:
create table classinfo(
class_id number primary key,
class_name varchar2(30)
) insert into classinfo values (1,'java3班') create table school(
school_id number primary key,
school_name varchar2(30)
)
--给班级表添加一个字段
alter table CLASSINFO add school_id number; --创建外键字段
alter table STUDENT
add constraint fk_stu_class foreign key (CLASS_ID)
references classinfo (CLASS_ID); --删除表
drop table 表名 --创建,修改,删除表,统称为数据库定义语言DDL --删除
delete from student-- where stu_id=1 --stu_name='李四' and age!=20 age<>20
例子3:
--创建用户
create user c##java06 identified by java123 --给用户赋予权限
--connect:链接角色
--resource:资源访问角色,能创建表等资源,可以访问和操作数据
--DBA:数据库管理员角色
grant resource to c##java06
grant connect to c##java06
grant dba to c##java06 --练习:创建用户并赋予权限,通过新建的用户来登录其他服务器(要先配置网络服务名)
--修改用户名密码
alter user c##hwua identified by hwua123 --建表语句
create table student(
stu_id number(8,0) primary key,
stu_name varchar2(30),
stu_age number(3,0),
stu_sex char(3),
stu_birthday date
) --对数据的增删改查
--新增数据
insert into student(stu_id,stu_name) values(1,'张三')
insert into student values(2,'李四',20,'男',sysdate) --查询数据
select * from student --删除数据
delete from student where stu_id=1 --修改数据
update student set stu_name='小李子',stu_sex='女' where stu_id=2
例子4:
用oop做一个进销存系统:
1.货物对象属性:编号(唯一),名称,单价,类别,厂家,厂家地址,厂家联系方式,库存,最后进货时间
2.功能:登录,入库,出库,库存查询,操作记录查询
3.功能描述:
登录:管理员输入用户名密码登录,可以有多个管理员
入库:
新增入库:新录入货物库存信息
库存修改:在已有的货物信息上修改
出库:输入出库货物编号,显示详细信息,输入出库数量,满足条件就出库
库存查询:可以按货物编号,类别,名称,来查询货物详细信息
操作记录查询:所有上面的操作都要记录下操作员的操作信息以及操作时间
可以按操作员姓名查询,操作类型
操作信息对象:属性:编号,操作员名字,操作类型,操作的数量,操作时间
--练习:把进销存的业务用数据库的方式完成
--提示:管理员,货物,操作记录对象分别建立三张表
--完成各项功能的sql语句 --用户信息表
create table user_info(
user_id number primary key,
username varchar2(30),
pass_word varchar2(20)
); --goods_info
create table goods_info(
goods_id number primary key,
goods_name varchar2(50),
goods_price number(10,2),
goods_count number(8,0)
)
drop table deal_info
--操作信息表deal_info
create table deal_info(
deal_id number primary key,
deal_type_id char(1),
user_id number,
goods_id number,
deal_count number,
deal_time date
);
--操作类型表
create table deal_type(
deal_type_id number primary key,
typename varchar2(30)
); --注册
insert into user_info values(1,'admin','')
--登录
select * from user_info where username='admin' and pass_word='' --入库
insert into goods_info values(1,'辣条',2.5,1000)
--记录入库操作
insert into deal_info values(1,'',1,1,50,sysdate) --操作类型数据
insert into deal_type values(1,'入库');
insert into deal_type values(2,'出库');
insert into deal_type values(3,'修改货物信息'); select * from user_info;
select * from goods_info;
select * from deal_info;
select * from deal_type;
二、Oracle 数据库基本操作的更多相关文章
- Oracle数据库基本操作(一) —— Oracle数据库体系结构介绍、DDL、DCL、DML
一.Oracle数据库介绍 1.基本介绍 Oracle数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或B/ ...
- Oracle 数据库基本操作——实用手册、表操作、事务操作、序列
目录: 0. 参考链接与参考手册1. oracle 实用(常用操作)指令2. 数据库基本操作语法 a) 表操作 1)创建表 2)更新表 3)删除表 4)查询 b) 事务操作 c) 序列操作 1)创建序 ...
- Oracle数据库基本操作 (六) —— 数据的导出与导入
一.cmd 下登录oracle数据库下的指定用户 方式一:命令行明文连接登录 打开cmd,输入:sqlplus/nolog 输入:conn username/passworld@数据库实例名 方式二: ...
- Oracle数据库基本操作 (五) —— 使用java调用存储过程
一.环境准备 登录Oracle数据库scott账号,利用emp进行操作. 1.创建 proc_getyearsal 存储过程 -- 获取指定员工年薪 create or replace procedu ...
- Oracle 数据库基本操作——用户管理与文件管理
目录: 1.初始状态 2.登录数据库 3.创建表空间 1)概念 2) 基本表空间 3)表空间管理 4.创建新用户 5.删除用户 6.用户的授权 1)定义 2)授予权限的方法 3)权限分类 4)授权注意 ...
- oracle建表权限问题和JSP连接oracle数据库基本操作
JSP连接oracle数据库相关操作 1.创建表 打开Enterprise Manager Console,为用户添加权限CREATE ANY TABLE和分配一定的表空间USERS限额1024k. ...
- Oracle 12c 读书笔记(二):Oracle数据库体系结构
以11g来分析 数据库实例包括:SGA和一系列后台管理.监控简称 数据库包括三种文件:数据文件.控制文件.重做日志文件 数据库实例和数据库是Orale数据库体系的核心部分 Oracle服务器和实例 实 ...
- C#学习--Oracle数据库基本操作(连接、增、删、改、查)封装
写在前面: SQLserver的C#封装:https://www.cnblogs.com/mexihq/p/11636785.html 类似于上篇有关SQLserver的C#封装,小编对Oracle数 ...
- Oracle数据库基本操作(二) —— 视图、序列、索引、同义词
一.视图(Views)与 同义词 1.视图:实际上是对查询结果集的封装,视图本身不存储任何数据,所有的数据都存放在原来的表中; 在逻辑上可以把视图看作是一张表 2.作用: 封装查询语句,简化复杂的查询 ...
随机推荐
- 减少页面加载时间的n种方法
减少HTTP请求 1:减少调用其他页面.文件的数量 2:使用css spirit , 减少图片加载次数 压缩js,css代码 1:一般js.css文件中存在大量的空格.换行.注释,这些利于阅读,如果能 ...
- 在html中使用特殊字体
目的:一首诗,要求从右往左读,垂直排列,类似古文 效果图: html内容: <!doctype html><html lang="en"><head& ...
- mybatis 中 使用 allowMultiQueries=true
单条的数据进行修改或者插入的时候没问题,但是进行批量操作的时候就会出现错误,是因为没有开启支持批量操作的功能. mybatis支持批量操作 开启批量执行sql的开关,在拼装mysql链接的url时,为 ...
- vue.js及项目实战[笔记]— 03 vue.js插件
一. vue补充 1. 获取DOM元素 救命稻草,document.querySelector 在template中标示元素`ref = "xxx" 在要获取的时候,this.$r ...
- AWS专线服务总结和疑问
1.AWS专线服务的入口, 从介绍页上可以看到,有如下功能: (1)专线可以连接AWS云主机和传统的数据中心或者分支机构. (2)专线可以连接AWS云主机和托管区的主机. 连接要素: (1)需要使用V ...
- 2 >&1 的准确含义
1. 2代表标准错误,2 > 表示重定向,就是把标准错误重定向到 1中,这个1如果想表示标准输出的话,就必须在前面加 & 2. 正常情况下,下面这个会有很多错误信息,但是加上2>& ...
- Html5 和 CSS的简单应用
本文是利用几个简单的小例子,来实现html+css的简单应用. 菱形链接菜单 本例是采用html5+css3.0设置的菜单链接.其中主要用到了以下几个方面: CSS3.0中的2D变换,如:旋转tran ...
- git 入门教程之远程仓库
远程仓库 如果说本地仓库已经足够个人进行版本控制了,那么远程仓库则使多人合作开发成为可能. 如果你只是打算自己使用git,你的工作内容不需要发布给其他人看,那就用不到远程仓库的概念. git 是分布式 ...
- matlab练习程序(旋转矩阵、欧拉角、四元数互转)
欧拉角转旋转矩阵公式: 旋转矩阵转欧拉角公式: 旋转矩阵转四元数公式,其中1+r11+r22+r33>0: 四元数转旋转矩阵公式,q0^2+q1^2+q2^2+q3^2=1: 欧拉角转四元数公式 ...
- g4e基础篇#4 了解Git存储库(Repo)
章节目录 前言 1. 基础篇: 为什么要使用版本控制系统 Git 分布式版本控制系统的优势 Git 安装和设置 了解Git存储库(Repo) 起步 1 – 创建分支和保存代码 起步 2 – 了解Git ...