数据库三范式详解

三范式的目的: 为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。在关系型数据库中这种规则就称为范式。范式是符合某一种设计要求的总结。要想设计一个结构合理的关系型数据库,必须满足一定的范式。 第一范式:(确保每列保持原子性) 第一范式是最基本的范式。数据库表里面字段都是单一...

2019-05-24 16:38:01

阅读数 3

评论数 0

sql 查询去掉冗余数据

1、删除重复数据 with aaa as (select ROW_NUMBER() over(partition by materialid order by materialid) ordernum,* from cc ) delete from aaa where ordernum&am...

2019-05-22 10:24:51

阅读数 2

评论数 0

oracle 常见死锁原因。

数据库是一个多用户使用的共享资源,当多个用户并发地存取数据时,在数据库中就会产生多个事务同时存取同一数据的情况。若对并发操作不加控制就可能会读取和存储不正确的数据,破坏数据库的一致性。加锁是实现数据库并发控制的一个非常重要的技术。在实际应用中经常会遇到的与锁相关的异常情况,当两个事务需要一组有冲突...

2019-05-17 09:37:34

阅读数 7

评论数 0

oracle 临时表空间作用及相关使用

临时表空间作用: 1、临时数据产生后Oracle数据库会先将这些存放到内存的PGA)内的sor_area排序区(SORT_AREA_SIZE参数)的地方,专门用来存放这些因为排序操作而产生的临时数据。但是这个分区的容量是有限的。当这个分区的大小不足以容纳排序后所产生的记录时,数据库系统就会将临时...

2019-05-05 14:30:57

阅读数 36

评论数 0

oralce数据库逻辑导出 跳过某些表(EXP)

1、使用exp导出部分数据: 法一:修改exu10tabs视图: 不同版本数据库,可能视图名称和语句有一定出入,请别照搬,exu10tabs在$ORACLE_HOME/rdbms/admin/catexp.sql中 修改脚本如下: CREATE OR REPLACE VIEW exu10t...

2019-04-29 10:46:46

阅读数 37

评论数 0

oracle常见数据文件恢复方法

1、基于linux操作系统文件恢复 条件:1、误强制删除linux下的数据文件(rm -rf)。2、未重启数据库或操作系统。3、数据库是归档模式 恢复原理:句柄恢复文件--因为我们的操作系统是linux,当数据文件从操作系统级别被rm掉,但之前打开该文件的进程仍然持有相应的文件句柄,所...

2019-04-26 17:13:56

阅读数 59

评论数 0

oracle数据库recover和restore的区别

restore just copy the physical file, recover will consistent the database. restore 是还原,文件级的恢复。就是物理文件还原。 recover 是恢复,数据级的恢复。逻辑上恢复,比如应用归档日志、重做日志,全部同步,保...

2019-04-26 16:19:57

阅读数 36

评论数 0

Oracle errorstack和oradebug工具说明及使用

https://blog.csdn.net/tianlesoftware/article/details/6525663

2019-04-25 17:16:05

阅读数 18

评论数 0

使用 logminer 工具分析日志

1、打开归档 SQL> alter database archivelog; 2、执行脚本安装logminer 创建dbms_logmnr包,用来分析归档日志 SQL> @$ORACLE_HOME/rdbms/admin/dbmslm.sql; 用来创建D...

2019-04-24 15:30:55

阅读数 13

评论数 0

探讨oracle checkpoint 和SCN的关系

checkpoint基本概念: 在数据库系统中,写日志和写数据文件是数据库中IO消耗最大的两种操作,在这两种操作中写数据文件属于分散写,写日志文件是顺序写,因此为了保证数据库的性能,通常数据库都是保证在提交(commit)完成之前要先保证日志都被写入到日志文件中,而脏数据块着保存在数据缓存(bu...

2019-04-23 11:18:06

阅读数 41

评论数 0

oracle 重做日志文件redo概述

redo--> undo-->datafile insert一条记录时, 表跟undo的信息都会放进 redo 中, 在commit 或之前, redo 的信息会放进硬盘上. 故障时, redo 便可恢复那些已经commit 了的数据. redo解释:在Oracle数...

2019-04-17 15:32:47

阅读数 9

评论数 0

oracle中redo和undo的区别

redo--> undo-->datafile insert一条记录时, 表跟undo的信息都会放进 redo 中, 在commit 或之前, redo 的信息会放进硬盘上. 故障时, redo 便可恢复那些已经commit 了的数据. redo解释:在Oracle...

2019-04-15 11:06:41

阅读数 37

评论数 0

ORACLE实现类似SQL SERVER表变量的方法

sqlserver 中用表变量类型的方式能做到缓存一个比较大的中间结果, 然后非常方便的操作这个表变量,oracle中虽然没有表变量这一类型,但是可以通过以下方法来实现相同的效果 1 创建基础数据表 create table t_test_pip( id varchar(10), timedat...

2019-04-10 11:06:05

阅读数 17

评论数 0

SQL Server的SQL语句性能优化总结

查看数据库统计信息: set statistics io on set statistics time on select * from table1; set statistics io off set statistics time off 数据库查询常用优化: 1、不要使用sele...

2019-04-09 16:32:01

阅读数 47

评论数 0

常见的几种ETL工具

https://blog.csdn.net/baodi_z/article/details/45023439

2019-02-27 11:53:18

阅读数 108

评论数 0

C语言指针作为函数返回值

C语言允许函数的返回值是一个指针(地址),我们将这样的函数称为指针函数。下面的例子定义了一个函数 strlong(),用来返回两个字符串中较长的一个: #include <stdio.h> #include <string.h&...

2019-02-15 16:53:51

阅读数 29

评论数 0

数组访问形式

数组的访问方式: #include<stdio.h> int main() { int a[10]={0,1,2,3,4,5,6,7,8,9}; int *p=a; printf("%d %d %d %d %d %d %d %d %...

2019-02-14 16:30:11

阅读数 20

评论数 0

VIM快捷键大全

曾经使用了两年多的Vim,手册也翻过一遍。虽然现在不怎么用vim了,曾经的笔记还是贴出来,与喜欢vim的朋友分享。   1. 关于Vim   vim是我最喜欢的编辑器,也是linux下第二强大的编辑器。 虽然emacs是公认的世界第一,我认为使用emacs并没有使用vi进行编辑来得高效。 ...

2019-02-14 10:50:31

阅读数 19

评论数 0

十大经典排序算法(C语言实现)

链接:https://www.cnblogs.com/onepixel/articles/7674659.html    

2019-02-14 09:41:55

阅读数 41

评论数 0

C 语言下连接MySQL数据库

要想进行 C 语言连接MySQL数据库的操作,那么首先要安装数据库,安装数据库挺简单的,建议看一下这个帖子传送门,这个还是很详细的。等到 MySQL 安装完毕之后,就可以在 C 语言下连接MySQL数据库了。 首先要安装一个叫 mysql-devel 东西,这个是一个驱动 通过 yum inst...

2019-01-31 10:10:50

阅读数 18

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭