DataBase
文章平均质量分 67
SpringThread
这个作者很懒,什么都没留下…
展开
-
oracle字段类型
字段类型 中文说明 限制条件 其它说明CHAR 固定长度字符串 最大长度2000 bytes VARCHAR2 可变长度的字符串 最大长度4000 bytes 可做索引的最大长度749NCHAR 根据字符集而定的固定长度字符串 最大长度2000 bytes NVARCHAR2 根据字符集而定的可变长度字符串 最大长度400转载 2009-01-11 18:11:00 · 651 阅读 · 0 评论 -
oracle中的序列-sequence
在oracle中sequence就是所谓的序列号,每次取的时候它会自动增加,一般用在需要按序列号排序的地方,保证不会重复(线程同步)。 1、 create sequence 首先要有create sequence权限, CREATE SEQUENCE sequence [INCREMENT BY n] 每次的增量 [START WITH n]原创 2009-01-13 12:24:00 · 1081 阅读 · 0 评论 -
oracle与mysql的JDBC连接
MySQL:Class.forName("com.mysql.jdbc.Driver");co = DriverManager.getConnection("jdbc:mysql://localhost/database_name?user=user_name&password=password"); Oracle:Class.forName("oracle.jdbc.drive原创 2009-01-16 12:21:00 · 612 阅读 · 0 评论 -
Hibernate Session的Flush模式
首先要知道的是:Hibernate会尽量将与数据库的操作延迟,直到必须要与数据库进行交互,例如save方法一般会在提交时才真正执行,最终在提交时会以批处理的方式与数据库进行交互,以提高效率。而将操作延迟,就是利用缓存,将最后要处理的操作放到缓存中。flush方法的主要作用就是清理缓存,强制数据库与Hibernate缓存同步,以保证数据的一致性。它的主要动作就是向数据库发送一系列的s原创 2009-09-11 20:50:00 · 4951 阅读 · 0 评论 -
数据库的隔离级别及其封锁协议
这几天复习Hibernate,发现对数据库基础的一些概念还没有了解清楚,因此找出以前的课本数据库系统概论,又在网上Google了下,总算清楚了好多.. 为了说有关数据库的隔离级别,先解释下一些概念。首先要知道的是设置数据库的隔离级别是为了进行并发控制。下面是由于对数据库的并发访问所造成的5类问题:1. 第一类丢失修改(Lost Update)【回滚丢失】:当2个事务更新相同的数原创 2009-09-11 20:23:00 · 3477 阅读 · 2 评论 -
两种丢失更新的区别
第一类丢失更新 A事务撤销时,把已经提交的B事务的更新数据覆盖了。这种错误可能造成很严重的问题,通过下面的账户取款转账就可以看出来:时间取款事务A转账事务BT1开始事务 T2 开始事务T3查询账户余额为1000元转载 2009-09-11 20:42:00 · 7043 阅读 · 0 评论 -
只读事务的一些概念
概念:从这一点设置的时间点开始(时间点a)到这个事务结束的过程中,其他事务所提交的数据,该事务将看不见!(查询中不会出现别人在时间点a之后提交的数据) 应用场合:如果你一次执行单条查询语句,则没有必要启用事务支持,数据库默认支持SQL执行期间的读一致性; 如果你一次执行多条查询语句,例如统计查询,报表查询,在这种场景下,多条查询SQL必须保证整体的读一致性,否则,在前条SQL查询之后,原创 2009-09-11 20:44:00 · 10300 阅读 · 2 评论 -
乐观锁与悲观锁
悲观锁【Pessimistic Locking】顾名思义就是采用一种悲观的态度来对待事务并发问题,我们认为系统中的并发更新会非常频繁,并且事务失败了以后重来的开销很大,这样以来,我们就需要采用真正意义上的锁来进行实现。悲观锁的基本思想就是每次一个事务读取某一条记录后,就会把这条记录锁住,这样其它的事务要想更新,必须等以前的事务提交或者回滚解除锁。 假如我们数据库事务的隔离级别设置为读取原创 2009-09-11 21:31:00 · 6527 阅读 · 1 评论