Oracle数据库基础(一)

Oracle 数据库基础知识点总结(一) 1.数据库的完整性  ①实体完整性:靠主键来维护,数据唯一且不能为空 ②参照完整性:靠外键来维护,主键表无记录外见表则无法操作数据 ③域完整性:check()约束 not null 约束 default 等 ④用户定义的完整性:基本涵盖上述三种数据库完整性 2.选择代理主键作为主键            在主从关系表中, 3.为什么服务器和客户端都要对输入 阅读详情

一、数据库简介
1.数据库系统的发展

文件存储方式保存数据的弊端:
(1)缺乏对数据的整体管理,数据不便修改。
(2)不利于数据分析和共享。
(3)数据量急剧增长,大量数据不可能长期保存在文件中。

2. 数据库和数据库管理系统的概念
数据库(Database,简称DB):
本质上讲,数据库就是信息的集合,它可以存在很长时间,往往是很多年。一般来讲,数据库就是按照数据结构来组织、存储和管理数据的仓库。**

数据库管理系统(Database Management System,简称DBMS):
简单来说,就是管理数据库的软件。

3.几个主流关系型数据库的概述
提到关系型数据库,就不得不先了解一下以下两个概念:

关系: 描述两个元素的关联或对应关系。使用关系模型把数据组织到二维数据表(Table)中。

表的概念: 一个关系数据库由多个数据表(Table)组成,数据表是关系数据库的基本存储结构。表是二维的,由行和列组成。表的行(Row)是横排数据,也被称作记录(Record)。表的列(Column)是纵列数据,也被称作字段(Field)。表和表之间存在关联关系。

(1)Oracle数据库概述
Oracle是著名的Oracle(甲骨文)公司的数据库产品。Oracle是世界上第一个商品化的关系型数据库管理系统。Oracle采用标准SQL(结构化查询语言),支持多种数据类型,提供面向对象的数据支持,具有第四代语言开发工具,支持UNIX、WINDOWS、OS/2等多种平台。Oracle公司的产品丰富,包括Oracle服务器、Oracle开发工具和Oracle应用软件。其中最著名的就是Oracle数据库,目前最新版本是Oracle 12C。

(2)DB2数据库概述
DB2是IBM公司的关系型数据库管理系统。DB2有很多不同的版本,可以允许在从掌上产品到大型机不同的终端机器上。DB2 Universal Database Personal Edition 和DB2 Universal Database Workgroup Edition分别是单用户和多用户系统,可以运行在OS/2和Windows上。DB2是Oracle的主要竞争对手。

(3)SQL Server数据库概述
Microsoft SQL Server是微软的产品,运行在Windows NT服务器上。Microsoft SQL Server的最初版本适用于中小型企业,但是应用范围不断扩展,已经触及到大型、跨国企业的数据库管理。

(4)MySQL数据库概述
MySQL是开放源码的小型关系型数据库管理系统,广泛应用于中小型网站中。总体拥有成本低、规模较Oracle和DB2小的优点。2008年1月16日,Sun收购了MySQL,2009年4月20日Sun被Oracle公司收购,所以MySQL现在属于Oracle公司。

(5)Sybase数据库概述
Sybase 是美国Sybase公司的关系型数据库系统。Sybase是较早采用C/S技术的数据库厂商。典型的UNIX或Windows NT平台上客户机/服务器环境下的大型数据库系统。Sybase通常与Sybase SQL Anywhere用于客户机/服务器环境,前者作为服务器数据库,后者为客户机数据库,采用该公司研发的PowerBuilder为开发工具,在国内大中型系统中具有广泛的应用。2010年被SAP收购。

二、SQL概述
SQL(Structured Query Language) :结构化查询语言。 SQL是在关系数据库上执行数据操作、检索及维护所使用的标准语言,可以用来查询数据、操纵数据、定义数据、控制数据。所有数据库都使用相同或者相似的语言。

❤️ 注意:
SQL语句本身不区分大小写,但是出于可读性的目的,我们通常会将SQL中的关键字全部大写,非关键字全部小写。

SQL的分类:


(1)数据定义语言(DDL ): Data Definition Language
用于建立、修改、删除数据库对象。
数据库对象包括:表、视图、索引、序列。

包括:
CREATE :创建表或其他对象的结构
ALTER :修改表或其他对象的结构
DROP:删除表或其他对象的结构
TRUNCATE:删除表数据,保留表结构

(2) 数据操纵语言(DML): Data Manipulation Language
用于改变数据表中的数据。和事务相关,执行完后需要经过事务控制语句提交后才能真正的将改变应用到数据库中。

包括:
INSERT:将数据插入到数据表中
UPDATE:更新数据表中已存在的数据
DELETE:删除数据表中的数据

(3) 事务控制语言(TCL): Transaction Control Language
用来维护数据一致性的语句。

包括:
COMMIT:提交,确认已经进行的数据改变
ROLLBACK:回滚,取消已经进行的数据改变
SAVEPOINT:保存点,使当前的事务可以回退到指定的保存点,便于取消部分改变

(4)数据查询语言(DQL): Data Query Language
用来查询所需要的数据。

SELECT语句

(5)数据控制语言(DCL): Data Control Language
用于执行权限的授予和收回操作。

包括:
GRANT:授予,用于给用户或角色授予权限
REVOKE:用于收回用户或角色已有的权限
CREATE USER:创建用户

三、 SQL(DDL、DML)
3.1 Oracle数据类型

❤️ 数据库中所有数据类型的默认值都是NULL

(1)NUMBER
NUMBER表示数字类型。经常被定义成NUMBER(P,S)形式,其中:
P:表示数字的总位数
S:表示小数点后面的位数

eg:
sal NUMBER(6,2)
表示sal列中的数据,整数位最大为4位,小数位最大为2位,也就是最大取值:9999.99

(2)CHAR
表示固定长度的字符类型。经常被定义成CHAR(N)形式,N表示占用的字节数。最大长度是2000字节。

eg:
ename CHAR(20)
表示ename列中最多可储存20个字节的字符串,并且占用的空间是固定的20个字节。

(3)VARCHAR2(Oracle特有的数据类型)
表示变长的字符类型。定义格式是VARCHAR2(N),N表示最多可占用的字节数。
最大长度是4000字节。

eg:
job VARCHAR2(100)
表示job列中最多可存储长度为100个字节的字符串。根据其中保存的数据长度,占用的空间是变化的,最大占用空间为100个字节。

(4)DATE
用于定义日期时间的数据。长度是7个字节,默认格式是:DD-MON-RR,例如:11-APR-17

eg:
hiredate DATE
表示hiredate列中存放的是日期数据。

3.2 DDL语句


3.2.1 创建表
(1)CREATE语句(创建表)
eg:

 CREATE TABLE employee(
   id NUMBER(4),
   name VARCHAR2(20) NOT NULL,
   gender CHAR(1) DEFAULT 'M',
   birth DATE,
   salary NUMBER(30),
   job VARCHAR2(30),
   deptno NUMBER(2)
 );
1
2
3
4
5
6
7
8
9
(2)DESC语句(查看表)
eg:

DESC  employee;
1


(3)DEFAULT语句
在创建表的时候可以使用DEFAULT为某个字段单独指定一个默认值。
例如,给gender列赋默认值‘M’,如果没有指定性别的员工,默认是男性

❤️ 注意:
1.数据库中的字符串字面量是使用单引号的。
2.虽然SQL语句本身不区分大小写,但是字符串的值是区分大小写的。

(4)NOT NULL 语句
❤️ 注意:
1.非空(NOT NULL)是一种约束条件,用于确保字段值不为空
2.默认情况下,任何列都允许有空值
3.当某个字段被设置了非空约束条件,这个字段中必须存在有效值
4.当执行插入数据的操作时,必须提供这个列的数据
5.当执行更新操作时,不能给这个列的值设置为NULL

3.2.1 修改表
3.2.1.1 修改表名
在建表后如果希望修改表名,可以使用 RENAME语句实现
语法如下:

 RENAME employee TO myemp
1
3.2.1.2 修改表结构
(1)添加新的字段
给表增加列可以使用ALTER TABLE 的ADD子句实现。
语法:

eg:

ALTER TABLE myemp
 ADD(
 hiredate DATE DEFAULT SYSDATE
 )
1
2
3
4
❤️ 注意:
列只能增加在最后,不能插入到现有的列中。

(2)修改现有字段
建表之后,可以改变表中列的数据类型、长度、默认值和是否为空。
语法如下:

eg:

ALTER TABLE myemp
 MODIFY (
 job varchar2(40) DEFAULT 'CLERK'
 )
1
2
3
4
❤️ 注意:

修改表结构都应当避免在表中有数据以后进行,若表中有数据,修改表中字段时尽量不要修改类型,若修改长度尽量增大避免缩小,否则可能导致失败。

(3)删除现有字段
使用ALTER TABLE 的子句DROP子句删除不需要的列。
语法如下:

eg:

ALTER TABLE myemp
 DROP(
 hiredate
 )
1
2
3
4
❤️ 注意:
删除字段需要从每行中删掉该字段占据的长度和数据,并释放在数据块中占据的空间,如果表记录比较大,删除字段可能需要比较长的时间。

3.3 DML语句


DML是对表中的数据进行的操作
DML伴随事物控制(TCL)
DML:包含操作:
增、删、改。

3.3.1 INSERT语句
给数据表里增加记录。
语法如下:
eg:

INSERT INTO  myemp
 (id,name,salary,deptno)
 VALUES(1,'jack',5000,10)
 SELECT * FROM myemp
 COMMIT
1
2
3
4
5
❤️ 注意:
执行DML操作后,需要再执行 COMMIT语句,才算真正确认了此操作。

如果插入的列有日期字段,需要考虑日期的格式
默认的日期格式:‘DD-MON-RR’
可以自定义日期格式,用TO_DATE函数转换为日期类型的数据
eg:

/*
 使用自定义日期格式插入记录
 */
 INSERT INTO myemp
 (id,name,job,birth)
 VALUES(
 1003,'donna','MANAGER',
 TO_DATE('2009-09-01','YYYY-MM-DD')
 )
1
2
3
4
5
6
7
8
9
3.3.2 UPDATE语句
修改表中数据
修改表中数据要添加WHERE过滤条件,这样才会只将满足条件的记录进行修改,否则是全表所有的数据都修改。一次也可修改多个字段。
eg:

UPDATE myemp
 SET salary=6000, name='rose',gender='F'
 WHERE id=1
1
2
3
3.3.3 DELETE语句
删除表中数据,删除数据通常也要添加WHERE语句来限定要删除数据的条件
否则就是清空表操作。

eg:

DELETE FROM myemp
WHERE name='rose'
DESC myemp
1
2
3
❤️ 注意:

如果没有WHERE子句,则全表的数据都会被删除。

在DDL语句中的TRUNCATE语句,同样有删除表数据的作用。

和DELETE语句的区别:
(1)DELETE可以有条件删除,TRUNCATE将表数据全部删除。
(2)DELETE是DML语句,可以回退,TRUNCATE是DDL语句,立即生效,无法回退。
(3)如果是删除全部表记录,且数据量较大,DELETE语句效率比TRUNCATE语句低。
删除全部记录:

删除全部记录:

DELETE FROM myemp;
或者
TRUNCATE  TABLEmyemp;

ORACLE时间函数(SYSDATE)深入理解 有些朋友对ORACLE时间函数理解不是很透彻,接下来讲详细介绍,希望可以帮助到你们 立即下载

相关推荐

Time-Interleaved Analog-to-Digital Converters

  这篇论文提供了时间交错模数转换器的教程回顾。在解释了偏置、增益、定时和其他不匹配对变换器性能的影响后,给出了目前解决不匹配问题的方法。论文最后总结了时间交错模数转换器的现状。 1.简介   时间交错模数转换器(ADC)将多个子ADC组合成一个ADC系统,可以实现比单独的子ADC[1]更快的采样速率。历史上,时间交错adc的主要缺点是需要紧密匹配子adc[2]的特性。近年来,由于应用需要非常宽带信号的数字化、功率高效子adc的可用性以及由深亚微米互补金属氧化物硅(CMOS)技术实现的微调技术,使得时间交错

weixin_44537056的博客 6732

数据表对象 (oracle字段类型 建表 约束)

目录 1.创建数据表 1.1数据类型 1)字符类型 2)数值数据类型 3)日期时间数据类型 4)LOB数据类型 1.2创建数据表 1).直接设计表 2)利用现有的表或者视图建立新表(create table语句嵌套子查询) 1.3数据表的特性 1)存储参数 2)数据块管理参数 2)initrans 参数 3)重做日志参数 4.缓存参数 2.维护数据表 2.1增加和...

树叶子的博客 3936

基于Simulink的超级电容与锂电池混合储能协调控制仿真

摘要:本文介绍基于Simulink的光伏-混合储能系统(HESS)建模与仿真方法,通过超级电容和锂电池的协同控制实现功率平抑。系统采用直流耦合架构,利用一阶低通滤波法将总功率分解为低频(锂电池承担)和高频分量(超级电容承担),并设计SOC自平衡机制维持超级电容工作点。仿真结果表明,该方案可使锂电池电流波动降低62%,光伏功率波动率降至7.5%,有效延长电池寿命。文章详细展示了从主电路搭建、功率分配到闭环控制的完整实现步骤,为新能源系统储能优化提供实用参考。

amy_mhd的博客 136

oracle日期类型默认值,oracle db列日期默认值不是sysdate(oracle db column date default value not sysdate)...

oracle db列日期默认值不是sysdate(oracle db column date default value not sysdate)如何设置日期列的默认值为不同于sysdate的东西? 像01/07/1998,即时通讯使用ALTER TABLE XILIADOADD (FECHA_AFIL DATE DEFAULT sysdate NOT NULL);how to set the d...

weixin_39951112的博客 1612

自动权重化图卷积网络(Auto-Weighted GCN)算法在反洗钱识别中的应用及代码实现

该算法通过自动学习节点之间的权重信息,能够更好地捕捉AML数据中的关系和结构,从而提高反洗钱识别的准确性和效果。传统的AML识别方法通常依赖于专家定义的规则和手动提取的特征,但这些方法在应对大规模和复杂的数据时存在一定的局限性。GCN通过在图上执行卷积操作来捕捉节点之间的关系和结构信息,从而实现对图数据的学习和表示。自动权重化图卷积网络是一种基于GCN的改进算法,能够自动学习节点之间的权重信息,从而更好地捕捉图中的关系。利用自动计算的权重值执行图卷积操作。根据节点之间的相似度,计算每个节点的权重。

syntax_api860的博客 376

rknn-toolkit推理yolov5-face.rknn模型--python代码

import os import urllib import traceback import time import sys import numpy as np import cv2 from rknn.api import RKNN ONNX_MODEL = 'yolov5s.onnx' RKNN_MODEL = 'yolov5s.rknn' IMG_PATH = './bus.jpg' DATASET = './dataset.txt' QUANTIZE_ON = True BOX_THR.

C/C++、嵌入式开发、深度学习算法、模型部署与推理优化 3079

oralce default sysdate 让它只显示日期不显示时间

default to_date(sysdate). default to_date(to_char(sysdate,‘yyyy-mm-dd'),‘yyyy-mm-dd');

dragon4s的专栏 2388

【云原生技术】K8s 在拉取镜像时报错tls: failed to verify certificate: x509: certificate signed by unknown authority

原因 Kubernetes 节点在拉取镜像时会对 Harbor 的 HTTPS 证书做严格校验; 日志里的核心报错是: ``` tls: failed to verify certificate: x509: certificate signed by unknown authority ``` 说明 Harbor 返回的服务器证书要么是自签发,要么缺少在系统信任链里的根/中级 CA,节点因此拒绝连接。 你需要让 **所有负责拉镜像的节点(containerd 或 Docker 守护进程)

weixin_46453070的博客 2874

oracle 设置日期的默认值

oracle 设置日期的默认值 1.修改日期字段的默认值为但前系统的时间:     alter table 表名 modify 日期字段  DATE  default sysdate   not  null ;   2.修改日期字段的默认值为指定的时间:我们使用

lanchengxiaoxiao的专栏 2万+

Python爬虫实战:使用最新技术爬取GitHub Trending项目

本文将详细介绍如何使用Python最新技术栈构建一个高效的GitHub Trending爬虫。我们将使用异步请求库httpx、HTML解析库parsel、数据存储方案以及反反爬技术,完整实现一个能够稳定获取GitHub Trending数据的爬虫系统。文章包含5000余字详细教程,从环境搭建到代码实现,再到数据处理和存储,最后部署运行,提供全方位指导。GitHub Trending页面展示了GitHub上当前最受欢迎的项目,对于开发者了解技术趋势、发现优秀项目非常有价值。

2201_76125261的博客 738

使用 Python 爬虫抓取 IMDb 电影信息 - 评分、评论与基本信息抓取教程

本文介绍了如何使用 Python 爬虫技术抓取 IMDb 电影评分、评论和基本信息。我们分别展示了通过IMDb API和两种方法抓取数据,并进行了数据存储、分析与可视化。在未来,我们还可以基于这些数据开发电影推荐系统、情感分析工具等,进一步丰富电影数据的应用场景。通过这些实践,您不仅学会了如何抓取和存储数据,还可以通过这些基础来构建自己的数据分析应用,获取更丰富的电影数据。

2201_76125261的博客 601

Oracle数据库基础(一)

一、数据库简介 1.数据库系统的发展 文件存储方式保存数据的弊端: (1)缺乏对数据的整体管理,数据不便修改。 (2)不利于数据分析和共享。 (3)数据量急剧增长,大量数据不可能长期保存在文件中。 2. 数据库和数据库管理系统的概念 数据库(Database,简称DB): 本质上讲,数据库就是信息的集合,它可以存在很长时间,往往是很多年。一般来讲,数据库就是按照数据结构来组织、存储和管理...

Alive的博客 18万+

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Oracle基础学习一:安装Oracle9i Database及Client 认识相关工具

1.安装Oracle9i或其他版本的Database 和 Client等2.利用[数据库配置助手]创建数据库表空间3.利用[企业管理器]管理数据库表空间4.配置 [管理服务器]5.SQL Plus 与 SQLPlus Worksheet6.Oracle Administration Assistant for Windows NT 等 其他工具=======================

freeliver54的专栏 865

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Oracle 数据库新手指南(一) Oracle基础

Oracle 数据库是由 Oracle 公司开发的一款关系型数据库管理系统。它以其高可用性、可扩展性以及强大的数据处理能力而闻名。Oracle 支持多种平台,包括 Windows、Linux 和 Unix 等操作系统。高可用性:Oracle 提供了多种高可用性和灾难恢复解决方案,如 Real Application Clusters (RAC) 和 Data Guard,确保数据库服务的连续性。安全性:Oracle 集成了高级安全功能,包括透明数据加密、审计和访问控制机制等。性能优化工具。

a494312616的博客 2254

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

实验一 Oracle Database环境和SQL *Plus基础

实验一    Oracle Database环境和SQL *Plus基础 一、实验目的 掌握Oracle Database数据库的安装,学会使用SQL *Plus环境的设置及应用。   二、实验环境 本实验采用的RDBMS是Oracle公司的数据库管理系统,以Oracle Database 11g版本为软件平台。   三、实验内容与要求 1. 熟悉Oracle Database软件

evilcry2012的专栏 2506

Oracle数据库基础知识点大全(一)

sqlplus – 自带工具 regedit – 注册表 管理 服务 net start OracleOraDb11g_home1TNSListener --监听服务 net start OracleServiceORCL —基础服务 登录管理员 锁定用户 alter user 用户名 account lock; 解锁 alter user 用户名 accoun...

wswlyf的博客 2343

oracle数据库编程基础,oracle数据库基础一

1.冷备份和热备份不同点以及各自的优点热备份在数据库仍旧处于工作状态时进行备份。而冷备份在数据库关闭后,进行备份2.在利用备份恢复数据库时,没有控制文件重建控制文件,用带backup control file子句的recover命令恢复数据库3.根据数据初始化pfile转换成spfile文件create spfile from pfile4.数据库的data block,extent和segmen...

weixin_32299949的博客 149

Oracle数据库之(一)Oracle基础

一、Oracle基础 1.1 Oracle基本概念 数据库和数据库实例 数据库: 磁盘上存储的数据的集合; 在物理上表现为数据文件、日志文件和控制文件等; 在逻辑上以表空间形式存在; 必须首先创建数据库,然后才能使用Oracle。 数据库实例: 每启动的数据库都对应一个数据库实例,由这个实例来访问和控制数据库; 为了运行数据库,Oracle系统所运行的所有进程和分配的内存结构的组合体。 小贴士: 数据库:永久的,硬盘上 数据库实例:临时的,内存中 数据库中的文件 数据文件

qq_50994235的博客 270

oracle数据库基础学习一

与mysql、sqlServer同是关系型数据库 注意:oracle一定不要安装在共享盘中 oracle的体系结构:内部提交了两次(提高了oracle数据库写的速度) 注意:关闭虚拟机步骤不能错: 1:点击左上角× 2:点击“挂起” 使用虚拟机的好处:可以为虚拟机创建一个快照,当虚拟机出现问题时选择快照回复即可 ...

qq_41956566的博客 266

oracle数据库基础一

1.冷备份和热备份不同点以及各自的优点 热备份在数据库仍旧处于工作状态时进行备份。而冷备份在数据库关闭后,进行备份 2.在利用备份恢复数据库时,没有控制文件 重建控制文件,用带backup control file子句的recover命令恢复数据库 3.根据数据初始化pfile转换成spfile文件 create spfile from pfile 4.数据库的data block,e

fanyos的专栏 288
上一篇: JAVA基础试题
下一篇: Oracle数据库基础(二)
dannideding
博客等级 码龄5年 3粉丝 3原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值