在企业数据库设计中,经常会遇到一个需求,就是希望把操作之前的数据保留下来,能够看到操作之前是什么数据,操作之后是什么数据。对于这种需求,我们可以使用保留历史数据或者使用版本来实现。

为了能够保留历史数据,在版本设计时有以下方案:

一、使用版本号

版本号是一种常见的版本设计方案,就是在要进行历[……]

阅读全文

在存储标题、网址等一系列不长不短的内容时,字段类型我们可能选择 varchar(255) 或者 varchar(256),使用哪个好呢?

有些人选择 varchar(255),可能来源于以下两个原因:

  • tinyint 类型存储的最大数字是 255,诱导我们设置 varchar 时也不要[……]

阅读全文

悲观锁(Pessimistic Lock), 顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。

乐观锁(O[……]

阅读全文

完全卸载oracle11g步骤:

1、 开始->设置->控制面板->管理工具->服务 停止所有Oracle服务。

2、 开始->程序->Oracle – OraHome81->Oracle Installation Products-> Universal Installer,单击卸载产品“-[……]

阅读全文

1.装第一个Mysql

2.装第二个Mysql

完成

会遇到的问题

1.服务名的冲突,导致只有一个Mysql名的服务

2.端口的冲突,一般都是默认的3306,可以将第二个Mysql的端口改为其他不常的端口如:3307

解决方法

手工安装其中一个Mysql的服务,

参考脚本:安装目录下

bin\mys[……]

阅读全文

我认为 Ligaya Turmelle 的关于SQL联合(join)语句的帖子对于新手开发者来说是份很好的材料。SQL 联合语句好像是基于集合的,用韦恩图来解释咋一看是很自然而然的。不过正如在她的帖子的回复中所说的,在测试中我发现韦恩图并不是十分的匹配SQL联合语法。

不过我还是喜欢这个观[……]

阅读全文

一直对时间戳这个概念比较模糊,相信有很多朋友也都会误认为:时间戳是一个时间字段,每次增加数据时,填入当前的时间值。其实这误导了很多朋友。

  1. 基本概念

    时间戳:数据库中自动生成的唯一二进制数字,与时间和日期无关的, 通常用作给表行加版本戳的机制。存储大小为 8个字节。

    每个数据库都[……]

阅读全文