数据库
在学习数据库的路上
请叫我大虾
这个作者很懒,什么都没留下…
展开
-
《收获,不止oracle》读书笔记一:oracle体系结构
从图中可以看出,oracle数据库是由实例和一组数据库文件组成。实例是由oracle开辟的内存区和一组后台进程组成的。原创 2024-06-18 18:49:41 · 346 阅读 · 0 评论 -
oracle-sql语句执行过程
服务器进程(server process)接收到sql语句。sql语句通过网络到达数据库实例。客户端输入sql语句。原创 2023-11-05 20:24:45 · 361 阅读 · 0 评论 -
oracle体系结构
oracle数据库主要有三种文件: control,log,dbf文件。原创 2023-11-05 18:21:48 · 153 阅读 · 0 评论 -
oracle:更改序列
以下内容转载:https://blog.csdn.net/huaishuming/article/details/47018507如何修改序列(Sequence)的初始值(START WITH)Oracle 序列(Sequence)主要用于生成流水号,Oracle EBS系统中是经常用到的。但是,有时需要修改序列初始值(START WITH)时,好多人凭感觉认为:Alter Sequenc...转载 2018-09-03 16:37:24 · 1577 阅读 · 0 评论 -
告警日志介绍
内容转载自:https://www.cnblogs.com/kerrycode/p/3899558.html告警日志位置在ORACLE 10g中,BACKGROUND_DUMP_DEST参数确定了告警日志的位置,但是告警日志的文件名无法修改,告警日志的名称为:alert_<SID>.log ,其中<SID>是实例的名称。BACKGROUND_DUMP_DEST参数是...转载 2018-09-08 14:57:28 · 3031 阅读 · 0 评论 -
oracle:instance与database,启动过程
oracle server主要由两个部分组成:instance和database. instance是指一组后台进程(在windows上是一组线程)和一块共享内存区域。database是指存储在磁盘上的一组物理文件。通过instance与database协同。oracle数据库才能形成一个动态的可访问关系型数据库.1. startup nomount; nomount的过程...原创 2018-09-10 09:47:21 · 871 阅读 · 0 评论 -
ORACLE TNS(transparence Network Substrate透明网络底层)
在客户端配置本地服务名时,需要提供: 服务器地址,服务器监听的端口号,网络协议,ORACLE_SID或数据库服务名。如下:ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.50.110.12)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICA...原创 2018-10-26 18:25:13 · 649 阅读 · 0 评论 -
sqlplus执行SQL文件
在SQL*PLUS环境下,可以通过@, start执行sql脚本. run只能执行sql命令.execute只能执行存储过程。原创 2018-10-30 23:05:40 · 8241 阅读 · 0 评论 -
数据库进程
(1)数据写进程(dbwr):负责将更改的数据从数据库缓冲区高速缓存写入数据文件。(2)监控进程(pmon):负责在一个Oracle进程失败时清理资源。(3)归档进程(arcn):在每次日志切换时把已满的日志组进行备份或归档。(4)系统监控(smon):检查数据库的一致性如有必要还会在数据库打开时启动数据库的恢复。(5)检查点进程(ckpt):负责在每当缓冲区高速缓存中的更改永久地...原创 2018-11-01 09:29:40 · 1799 阅读 · 0 评论 -
oracle: to_char,to_date
to_char()将日期转为字符串, to_date()将字符串转为日期SELECT TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS') FROM DUAL;-- 中文需要用双引号括起来SELECT TO_CHAR(SYSDATE, 'YYYY"年"MM"月"DD"日"HH24:MI:SS') FROM DUAL;SELECT TO_DATE('200706...原创 2018-08-27 10:11:33 · 246 阅读 · 0 评论 -
oracle:SAVEPOINT(保存点)
以下内容转载自: https://mp.weixin.qq.com/s?__biz=MzIzOTA2NjEzNQ==&mid=2454771894&idx=2&sn=f605c49f7ad63c6051e680cee44d3733&chksm=fe8bb5cec9fc3cd8ddac9f1c022b471d5489e602c76012299e3150d4d82...转载 2018-08-18 15:54:03 · 4138 阅读 · 0 评论 -
oracle: ROW_NUMBER() OVER(PARTITION BY) 用法
select rank() over(partition by c_sec_code order by D_ADJ desc) rk, b.* from T_D_SV_FI_PAY b where b.N_CHECK_STATE = 1 ...原创 2018-08-07 20:55:29 · 3387 阅读 · 0 评论 -
oracle:主键,外键
主键用来唯一地标识一条记录,不能有重复的记录,不允许为空,主键只能有一个,用来保证数据完整;表的外键是另一表的主键,外键可以有重复的,可以是空值,一个表可以有多个外键,用来和其它表建立联系用的。 外键列是否在主表中存在,若不存在,则报错:ORA-02291: integrity constraint (SYS.FK_XX) violated - parent key not ...原创 2018-08-08 10:51:00 · 3252 阅读 · 0 评论 -
oracle:范式
1NF:原子性,字段不可再分,否则就不是关系型数据库。2NF:唯一性,一个表只说明一个事物。3NF:每列都与主键有直接关系,不存在传递依赖。原创 2018-08-13 09:54:38 · 323 阅读 · 0 评论 -
oracle:connect by start
select * from t_s_fun aCONNECT BY C_FUN_CODE = PRIOR C_FUN_CODE_P START WITH C_FUN_CODE IN ('AccSubject') 1) 首先,执行的是该select语句中的start with子句部分2)接着,执行的是该select语句中的connect by子句部分 pri...原创 2018-08-13 15:40:39 · 319 阅读 · 0 评论 -
如何在Oracle中复制表结构和表数据
转载自:https://blog.csdn.net/gateway6143/article/details/433084651. 复制表结构及其数据:create table table_name_new as select * from table_name_old2. 只复制表结构:create table table_name_new as select * from tab...转载 2018-08-14 21:51:57 · 385 阅读 · 0 评论 -
oracle:sql约束
NOT NULL:用于控制字段的内容一定不能为空(NULL)。UNIQUE:控制字段内容不能重复,一个表允许有多个UNIQUE约束。PRIMARY KEY:也是用于控制字段内容不能重复,但它在一个表只允许出现一个。FOREIGN KEY:FOREIGN KEY约束用于防止非法数据插入外键列,因为外键列的值必须在主表中存在。CHECK:用于控制字段的值范围。DEFAULT:用于设...原创 2018-08-15 20:55:46 · 241 阅读 · 0 评论 -
oracle:自定义函数
CREATE OR REPLACE FUNCTION GETDAY_HLastDAY (D_Stand_Date date)return Date asD_Return Date; /*返回的日期*/begin D_Return := D_Stand_Date; /*如果当天是工作日,下一天也是工作日*/ if (isholiday('XSHE',D_St...原创 2018-08-17 17:37:08 · 504 阅读 · 0 评论 -
oracle:小知识点
一:NULL NULL不代表0,也不代表空格. NULL表示未知,无意义.一个数+NULL结果还是NULL. 比如 1+NULL还是NULL. 二: PLSQL注释 1. -- 2. /**/ 三: 列别名 1. 若列的别名中含有空格,则用双引号括起来,不能使用单引号。比如列别名可以是 "xiatian", "xia tian" 2. 别名不能使用...原创 2018-08-18 15:58:34 · 295 阅读 · 0 评论 -
Oracle事务
以下两个操作都能导致Oracle事务结束 1.用户强行退出SQL*Plus未提交的事务自动回滚. 2. COMMIT或ROLLBACK属于正常提交或回滚事务.原创 2018-08-21 09:41:05 · 756 阅读 · 0 评论 -
oracle:对视图DML操作
一、对视图进行DML操作 1.创建一个视图v_test create or replace view v_testas select *from test where c_sec_code = '00939 HS' 2.向视图 v_test中进行insert操作 insert into v_test (c_sec_code,d_sett) values('00939 ...原创 2018-08-23 12:14:10 · 1793 阅读 · 0 评论 -
oralce 角色 权限
一个用户可以赋予多个角色,一个角色可以拥有多个权限.CONNECT角色只具有最简单的登录权限,登录后不能做任何操作,只有赋予了CREATE TABLE权限后才能创建表。数据库实例,数据库监听如果没有启动,普通用户不能连接到数据库。 以下内容,转载自:https://www.cnblogs.com/lanqingzhou/p/8145272.html1.新建个用户crea...转载 2018-08-03 22:58:16 · 273 阅读 · 0 评论 -
oracle PL/SQL
PL/SQL(Procedure Language & Structured Query Language)是Oracle在标准的SQL语言上的扩展。PL/SQL不仅允许嵌入SQL语言,还可以定义变量和常量,允许使用条件语句和循环语句,允许使用异常处理各种错误,这样使得它的功能变得更加强大。一个基本的PL/SQL块由三部分组成:定义部分,可执行部分以及异常部分。定义部分:定义将在可...原创 2018-08-03 23:30:44 · 230 阅读 · 0 评论 -
索引中丢失IN或OUT
sql中有15个?,但是pst只传了13个参数,加上后面的两个参数 pst.setString(index++, mkt); pst.setDate(index++, DbFun.sqlDate(date));即可.原创 2018-08-07 19:02:27 · 1429 阅读 · 0 评论 -
oracle 更改用户状态,密码
1. select username from dba_users 2.若修改某一个用户密码, 修改用户口令 格式为:alter user 用户名 identified by 新密码;以 HR 为例,密码修改为 123456. 可输入alter user HR identified by 123456;用户状态为 EXPIRED(过期), LOCKED(锁定)alte...原创 2018-07-31 21:19:11 · 1663 阅读 · 0 评论 -
oracle index
索引设计成树形(tree),和sql的需求有关.数据库索引使用B+树 索引在逻辑,物理结构上都独立于和索引有关的表.官方文档用一个例子引出了索引的好处,可以加开访问数据的速读.Indexes are one of many means of reducing disk I/O(索引是减少磁盘I/O的多种方法之一) 以下参考自:小麦苗dba面试题以下列上适合建立...原创 2018-08-02 16:53:09 · 311 阅读 · 0 评论 -
oracle 体系结构
逻辑体系结构 数据库: 在oracle中,数据库是由表空间来组成的,而表空间里面是具体的物理文件---数据文件。我们可以创建数据库并为其指定各种表空间。表空间: 这是个逻辑概念,本质上是一个或者多个数据文件的集合。数据文件: 具体存储数据的物理文件,是一个物理概念。 一个数据文件只能属于一个表空间,一个表空间可以包含...转载 2018-07-29 23:28:35 · 207 阅读 · 0 评论 -
oracle schema
上图来自oracle官方文档每个oracle账户,都有一个同名的schema容器. 一个用户有一个缺省的schema,其schema名就等于用户名,当然一个用户还可以使用其他的schema。如果我们访问一个表时,没有指明该表属于 哪一个schema中的,系统就会自动给我们在表上加上缺省的sheman名。比如我们在访问数据库时,访问scott用户下的emp表,通过 select *...转载 2018-07-30 13:34:54 · 1109 阅读 · 0 评论 -
oracle segments,tablespace,and data files
一个table对象可以跨多个数据文件(data files)转载 2018-07-30 19:01:59 · 320 阅读 · 0 评论 -
oracle 常用函数
1. COALESCE() 返回表达式中第一个非空表达式,如有以下语句: SELECT COALESCE(NULL,NULL,3,4,5) FROM dual 其返回结果为:32.SYSDATE函数返回Oracle服务器的日期和时间3.SUBSTR为字符截取函数,表示从字符串指定的位置返回指定长度的子串.4.ADD_MONTHS函数是加上指定的月份数5. TRUN...原创 2018-07-31 14:28:08 · 263 阅读 · 0 评论 -
oracle Schema Object Dependencies
有些schema对象之间互相依赖. 比如基于表(tables)建立的视图.如果把视图依赖的基础表删除,那么视图就无法使用.存储过程依赖表# 创建一个表CREATE TABLE test_table ( col1 INTEGER, col2 INTEGER );# 创建一个存储过程CREATE OR REPLACE PROCEDURE test_procASBEGIN ...原创 2018-07-31 15:25:31 · 288 阅读 · 0 评论 -
oracle SYS and SYSTEM Schemas
每个数据库都有默认的管理用户.当创建数据库时,会自动创建SYS和SYSTEM用户.SYS Schema存储了基础表和视图,数据库运行会使用这些基础表,视图.所以 SYS下的表和视图不能被任何用户修改.SYSTEM Schema存储了额外的基础表,永远不要用SYSTEM存储一般用户的业务表....原创 2018-07-31 20:05:37 · 407 阅读 · 0 评论 -
oracle ORA-00918 未明确定义列
出现这种错误,一般是列名重复导致的,如下: create table testchar( v_date varchar2(20), d_date date)insert into testchar select '2018-07-20', date'2018-07-20' from dual;# 这时候有两个字段都是vv, 那么查询时,就会区分不出来这两列,oracl...原创 2018-07-20 14:24:13 · 19168 阅读 · 0 评论 -
性能跟踪_ORACLE
set autotrace on // 开启性能跟踪,并且打印结果set autotrace off // 关闭set autotrace traceonly // 开启性能跟踪,但不打印结果原创 2018-05-15 10:47:33 · 335 阅读 · 0 评论 -
oracle:导入数据,遇到oracle错误 959
IMP-00003: 遇到 ORACLE 错误 959ORA-00959: 表空间 'XXXXXXXXXXX' 不存在。今天有个需求:需要从一个用户导15张表到另一个用户,数据挺大,就选在用exp/imp工具,简单方便;由于表空间两个用户默认不同,所以加了参数ignore=y,以便能成功导入;imp ***/*** ignore=y tables(***) file=E:\bak\ta...转载 2018-07-20 13:51:40 · 4881 阅读 · 0 评论 -
oracle,导入,导出数据
将某些表导出:# 导出多张表exp admin/123456@10.60.145.52/test file=C:\Users\Administrator\Desktop\dbf\tsp tables=(t_s_test,t_d_a_test,t_d_user)# 导出表,带有条件的导出exp yssfa45zh/YSSFA45ZH@10.50.144.52/test file=C:\...原创 2018-07-20 14:04:09 · 283 阅读 · 0 评论 -
oracle, to_char(), to_number, ORA_01722
create table testchar( v_date varchar2(20), d_date date)insert into testchar select '2018-07-20', date'2018-07-20' from dual;// 这种将 tochar()字符串类型的字段v_date,就会报ORA-01722的错误select to_char(v_dat...原创 2018-07-20 14:12:47 · 1670 阅读 · 0 评论 -
oracle 创建带参数的视图
在Oracle里创建带参数的视图 在Oracle里,视图不像存储过程和函数一样,可以定义输入参数,但我们可以变个方式,使用程序包来实现 首先定义程序包: /* 按个人需要定义,我定义三个参数 ,因我项目程序需要,所以三个参数都是number ,当然可定义其它类型但切记,第二个create 的参数类型等需以第一个create一致,否则程序包创建失败*/create or repl...原创 2018-07-20 15:36:31 · 2657 阅读 · 0 评论 -
oracle 锁表
select s.username, l.object_Id, l.session_id, s.serial#, l.oracle_username, l.os_user_name, l.process from v$locked_object l, v$session s where l.session_...原创 2018-07-20 15:39:02 · 245 阅读 · 0 评论