数据库修改多对多的中间表的记录的技巧
一、把中间表相应的字段先删除,然后再添加
*当单方表是从数据库中查得持久化对象必须把此对象的set容器用clear()清空,
*同时把一对多的级联配置文件中的级联风格设置为cascade="all,delete-orphan",
*把中间表中要修改的对象对应的数据全部删除,
*通过save()或merge()重新持久化中间表的对象
------此种方法 ...
JDBC大批量写入数据到SQLServer2000,记录数大于10000
复制代码 代码如下:
SpObserver.putSp("sessionFactory1");
SimpleDateFormat fomat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Session s=null;
s=daoSupport.getSessionFactory().openSession();
Connection con=s.connection();
Statement stmt = null;
try {
stmt=con.createStatement();
con.setA ...
记一次数据库查询超时优化问题
问题发现
在七月份时,经常发现有几个定时任务报错,查看了下异常原因,大概定位是数据库执行异常。
###Errorqueryingdatabase.Cause:com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Unsupportedcommand
###Theerrormayexistinclasspathresource[mapper/XXXXXXXXX-Mapper.xml]
...
SQL数据库与oracle数据库镜像有什么不同对比
Oracle数据库与MSSQL数据操作上有很大的不同,但是,在镜像操作方面有类比的地方。这篇文章关于MSSQL数据库镜像在Oracle数据库中是如何实现的,它们之间存在哪些差异呢。
首先,微软SQL数据库中的镜像数据库类似于Oracle数据库中的备用数据库。我说的只是类似,确切的说,我们需要考虑不同数据库在自己体系中的差异。MS ...
虚拟主机ACCESS转换成MSSQL完全攻略(图文教程)
许多用ASP开发的系统也可以支持MS SQL数据库。但有不少网友不知道如何将原来的ACCESS数据库转换成MS SQL数据库。根据笔者转换MAXZ的电影系统的经历,特此转换方法公布出来,让大家共享。
一、基本前提
1、您使用的虚拟主机支持MS SQL。请必须先从虚拟主机提供商处了解到您所购买的虚拟主机是否支持MS SQL。主机提 ...
比较SQL Server与Oracle、DB2数据库的一些知识
开放性
SQL Server
只能在Windows 上运行,没有丝毫的开放性,操作系统的系统的稳定对数据库是十分重要的。Windows9X系列产品是偏重于桌面应用,NT server只适合中小型企业。而且Windows平台的可靠性,安全性和伸缩性是非常有限的。它不象Unix那样久经考验,尤其是在处理大数据量的关键业务时。
Oracle
能在所有 ...
程序员应该知道的数据库设计的两个误区
然而,在我所经历过的项目中,某些数据库的设计会存在一些问题,尤其普遍的就是下面将要描述的这两点,个人觉得是应该避免的误区,总结出来与大家讨论。
误区之一 备用字段
现象描述:
在数据表中,不仅设计了当前所需要的字段,而且还在其中留出几个字段作为备用。
比方说,我设计了一个人员表(Person),其中 ...
sql 左连接和右连接的使用技巧(left join and right join)
下面给一个例子进行说明:
例表a
aid adate
1 a1
2 a2
3 a3表b
bid bdate
1 b1
2 b2
4 b4left join:
select * from a left join b on a.aid = b.bid
首先取出a表中所有数据,然后再加上与a,b匹配的的数据
此时的取出的是:
1 a1 b1
2 a2 b2
3 a3 空字符同样的也有right join
指的是首先取出b表中所有数据, ...
MDAC2.8 安装问题与解决方法
1、MDAC2.8安装问 题 在windows xp + sp2 环境下安装过程中出现提示:“mdac 2.8 Rtm 与此版本 windows 不兼容”。
解决办 法:现在MDAC2.8的所有功能都成为 windowsXPSP2的一部分,该提示正常,不会影响使用。 你的系统是WINXP-SP2,系统自带MDAC 2.8 SP2,因此你不能安装MDAC 2.8,而且 WINXP-SP2不能卸载MDAC,他是系统 ...
大数据量,海量数据处理方法总结
下面的方法是我对海量数据的处理方法进行了一个一般性的总结,当然这些方法可能并不能完全覆盖所有的问题,但是这样的一些方法也基本可以处理绝大多数遇到的问题。下面的一些问题基本直接来源于公司的面试笔试题目,方法不一定最优,如果你有更好的处理方法,欢迎与我讨论。1.Bloom filter
适用范围:可以用来实现数据 ...
数据库为何要建立索引的原因说明
这里想把之前的索引学习笔记总结一下:
首先明白为什么索引会增加速度,DB在执行一条Sql语句的时候,默认的方式是根据搜索条件进行全表扫描,遇到匹配条件的就加入搜索结果集合。如果我们对某一字段增加索引,查询时就会先去索引列表中一次定位到特定值的行数,大大减少遍历匹配的行数,所以能明显增加查询的速 ...
数据库设计规范化的五个要求 推荐收藏
若符合这两个条件,则可以说明这个数据库的规范化水平还是比较高的。当然这是两个泛泛而谈的指标。为了达到数据库设计规范化的要求,一般来说,需要符合以下五个要求。
要求一:表中应该避免可为空的列。
虽然表中允许空列,但是,空字段是一种比较特殊的数据类型。数据库在处理的时候,需要进行特殊的处理。如此的话 ...
未在本地计算机上注册“Microsoft.Jet.OleDb.4.0”提供程序错误的解决方法
最近在做一个导入Excel数据到数据库的程序出现了如下错误:
运行环境
数据库:SqlServer2008 R2
OS:Windows Server 2008 R2
IIS:IIS7
解决方法
在应用程序对用的应用程序池的高级设置中设置“启用32位应用程序”为“True”
...
数据库测试 实用技巧及测试方法
同样的在金融、租凭、零售、邮寄、医疗领域中,数据库也是不可缺少的。
随着应用的复杂程度增加需要更强大和安全系数高的数据库才可以满足需求。为了满足高频率的应用程序事务(如银行或财务应用),数据库的安全性成为首要之重。
目前,市场中有很多活跃的数据库工具,例如MS-Access2010,MS SQL Server2008 r2,Oracl ...
如何用分表存储来提高性能
首先,童家旺介绍了他认为的什么是优化:第一、做任何事情最快的方法就是什么也不做。
▲支付宝资深数据库架构师童家旺
第二、不访问不必要的数据:使用B*Tree/hash等方法定位必要的数据。使用column Store或分表的方式将数据分开存储。使用Bloom filter算法排除空值查询。
第三、合理的利用硬件来提升访问效率 ...
分享三种高效率SQL语句分页方法
1.如果有一个自动增长的id字段,则:
定义二个变量:Page,PageCount
Select top PageCount * From [tb_code] Where id>=(select min(id) from (select top (Page-1)*PageCount+1 id from [tb_code] order by id desc) as t) order by id desc
原理,根据ID计算出(Page-1)页的最小值,然后用TOP关键字及可解决问题。
2 ...
关于若干数据库数据插入性能的对比分析
本地数据库接触不多,最早用过Access,但现在SQLite功能更加强大--而且,说实在的我不喜欢Access,连带着不喜欢SqlServer,只要一看到满眼的@号go号我就头晕不止;更何况有一个我感觉非常致命的问题:分页太麻烦!远不如mySql/SQLite中的limit或者Oracle中的rownum来得痛快。
平时基本使用Oracle,对它的性能知根知底了;m ...
由拖库攻击谈口令字段的加密策略(数据库加密)
这些事件中最令业界瞠目的是RSA被入侵,这直接导致多家工业巨头遭遇连锁的攻击,很多安全企业本身也使用RSA的令牌。比RSA弱小很多的荷兰电子认证公司DigiNotar已经在被入侵后,宣告破产。
就在2011年上半年,我们还是站在旁观者的立场讨论这些事情。但随即我们就遭遇了CSDN、多玩和天涯等等的数据泄露,其中最为敏感的 ...
数据库建立索引的一般依据小结
建立索引常用的规则如下:
1、表的主键、外键必须有索引;
2、数据量超过300的表应该有索引;
3、经常与其他表进行连接的表,在连接字段上应该建立索引;
4、经常出现在Where子句中的字段,特别是大表的字段,应该建立索引;
5、索引应该建在选择性高的字段上;
6、索引应该建在小字段上,对于大的文本字段甚至超 ...
Mssql,Access的sql经典SQL语句大全
下列语句部分是Mssql语句,不可以在access中使用。
SQL分类:
DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE)
DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT)
DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)
首先,简要介绍基础语句:
1、说明:创建 数据库
CREATE DA ...