- 浏览: 1605240 次
- 性别:
- 来自: 厦门
文章分类
- 全部博客 (603)
- T_java (145)
- T_script&ASP (51)
- T_C/C++ (25)
- T_PowerBuilder (11)
- T_Database (53)
- T_odoo (7)
- T_应用服务器 (50)
- T_专_条形码 (6)
- T_专_负载均衡器 (4)
- T_操作系统 (94)
- T_信息安全 (41)
- T_专_搜索引擎 (14)
- T_L_PHP (58)
- T_L_Delphi (18)
- T_L_.NET、C#、VisualStudio (25)
- T_L_Objective-C (6)
- T_移动开发 (53)
- T_网络 (109)
- T_大数据 (2)
- T_嵌入式 (2)
- T_小众技术 (24)
- T_未分类 (58)
- L_旅游印记 (1)
- L_生活随笔 (48)
- L_中国文化 (18)
- L_户外与生存 (0)
最新评论
-
csbean4004:
不知道哪传来得恶习,发帖子不好好发,故意弄错一些东西,很讨厌
让HTML5支持后置摄像头 -
withthewind:
终于找到一个可以用的了。。。
如何用VBA取得Word文档中的标题前面的序号 -
busbby:
兄弟,无法下载,说文件不完整
一个好用的Outlook ost格式文件转pst文件的工具 -
yijavakevin:
密码啊~解压密码多少?
一个二维条形码组件 -
vipbooks:
你给的那个链接根本无法下载,跳到官网看了下最新版12M,但点下 ...
十步以内完成精细web打印
去年10月份就下载了一个SimpleSQL数据库在硬盘上,一直没有好好去摆弄摆弄,昨晚看到它,就想测测它的性能,于是就动手写点简单程序测了一下,立此存照一下。
简单介绍一下SimpleSQL是何物。SimpleSQL(下面简称为SSQL)是一个JAVA开发的单文件关系数据库,可以嵌入使用,可以在内存中保持数据,也可以以C-S模式使用,还可以用作其他多个数据库的代理,这是SSQL比较有意思的特点。下面的图表示出了SSQL的几种工作方式:
从这些工作模式来看,SSQL与HSQL很象,但我感觉SSQL的语法、函数等更象Oracle,用这个数据库开发的应用,移到Orace上时迁移工作量可能会小一些。所以,在有些场合不妨可以试用一下这个数据库。下面是SSQL手册自己宣称的特性:
autocommit mode
multiversion concurrency control
transactional mode
deadlock detection
transactional integrity (unique constraints and references)
64-bit portable database file
theoretical limit of 8589934592 GB
subselects
distributed queries
outerjoins: standard SQL92 JOIN command, (+) outerjoin operator (与Oracle相似之处)
heterogeneous queries
data migration queries (比较独特的特点)
Web report formatting functions
它还支持诸如: CASE、DECODE等函数(学Oracle的 :-) )
其他详细的特性我就不罗列了,如果有兴趣大家可以自己找来玩玩。
下面简单讲一下昨晚我测试的结果。
我的测试案例设计是:
对一张表操作:
tbl_user
---------------------------------
id bigint
login_id varchar(20)
password varchar(50)
name varchar(20)
email varchar(200)
sign varchar(2000)
regtime timestamp
用一个SQL语句往表里插入1000X1000记录:
Insert into tbl_user
values( NEXTVAL('tbl_user'), 'test'|| CURRVAL('tbl_user'), '720123', '张三'|| CURRVAL('tbl_user'), CURRVAL('tbl_user') || '@yahoo.com', MD5('张三'|| CURRVAL('tbl_user')), NOW())
这个SQL语句中的NEXTVAL是Sequence函数,与Oracle的Sequence很类似,不同的只是这里的Sequence不需要手工建,只要我们有调用NEXTVAL('tbl_user'),就会自动生成一个名为“tbl_user”的sequence,用起来比Oracle方便一些。
用一个SQL语句从表里查询总记录数:
select count(id) as cnt from tbl_user
我的机器配置是:
DELL LATITUDE D610
CPU: 迅驰1.8G
内存: 512M
在NetBeans5.5 Beta版中编写程序并以Run模式运行程序:
测试结果如下:
插入操作: 191分钟
查询操作(三次): 100秒
94秒
87秒
从这个结果来看,我认为SSQL作为内嵌数据库发布一些DEMO应用或是用来作开发数据库,是能够胜任。
最后有一点比较遗憾的是SSQL的新版本移掉了其中一些作者认为不需要的特性(包括C-S工作方式、事务等),而这些特性可能是我们应用开发人員往往需要的,所以我们只能用它的早期版本。作者网站对移掉的一些特性声明如下:
- The second version of SimpleSQL has been renamed to JavuSQL.
- This version is optimized for JavuServer.
- The main purpose is now embedded SQL database component.
- Most features not useful for JavuServer has been removed, including: client-server mode, heterogeneous queries, transactions, C++ compatibility.
- Remover features could be added on request in the future.
- JavuSQL is now available as a part of JavuServer,
- stand-alone version and source code (under LGPL) will be available soon.
为了下次不至于找不到这个数据库的早期版本,我把我下的1.2.3版放上来。
评论
我的测试案例设计是:
还是对一张表操作:
tbl_user --------------------------------- id IDENTITY login_id varchar(20) password varchar(50) name varchar(20) email varchar(200) regtime timestamp
这次测试的表比SSQL测试时少了一个VARCHAR(2000)的字段,因为HSQLDB的Sequence用起来不如SSQL,所以就改用IDENTITY;表类型就建成cached,因为HSQLDB默认的表类型内存表(Memory),刚开始时我用默认的表类型,插入数据是很快,但在插入到150K左右的记录时就OutOfMemory了,测不下去,试了几次不行,所以我就把表类型改成缓存表(CACHED)。
用一个SQL语句往表里插入1000X1000记录:
Insert into tbl_user( login_id, password, name, email, regtime) values( 'test' || IDENTITY() , '1234567', '张三' || IDENTITY(), 'test' || IDENTITY()|| '@yahoo.com', NOW())
用一个SQL语句从表里查询总记录数:
select count(id) as cnt from tbl_user
我的机器配置是:
DELL LATITUDE D610
CPU: 迅驰1.8G
内存: 512M
在NetBeans5.5 Beta版中编写程序并以Run模式运行程序:
HSQLDB的版本是:1.8.0.7
测试结果如下:
插入操作: 393分钟 (SSQL是 191 min)
查询操作(三次): 19.39秒 (SSQL是 100 sec)
15.297秒 (SSQL是 94 sec)
15.203秒 (SSQL是 87 sec)
从比较结果来看,SSQL的插入性能优于HSQLDB,但查询性能比HSQLDB差太多(我想不明白是怎么回事,有没有哪位大拿知道原因给解释一下。),所以,我认为,SSQL和HSQLDB总体性能没有太大的差别,但鉴于SSQL的开发已经转向,而HSQLDB还在不断发展中,使用时选用HSQLDB比较稳妥。
H2 Database Engine 我也有,找个时间也测一下。
http://www.h2database.com
这个图片看不清吗?
发表评论
-
十步以内完成精细web打印
2017-06-21 11:44 7366注意: 康虎云报表组 ... -
MySQL正则替换函数
2017-05-24 13:01 1968DELIMITER $$ CREATE FUNCTION ... -
MySQL 对比数据库表结构
2017-02-14 17:41 1309MySQL 对比数据库表结 ... -
浏览器端精准打印或套打组件
2017-01-18 13:05 6693注意: 康虎云报表 ... -
在MySQL中全库搜索指定字符串
2016-11-13 07:47 2541有时候,需要从整个MySQL库中搜索某一字符串,但却不知道 ... -
Sql注入之sqlmap+dvwa实例演练
2016-10-27 16:27 1575Sql注入之sqlmap+dvwa实例演练 相信 ... -
在Ubuntu 16.04上安装Odoo8(附自动安装脚本)
2016-06-09 13:02 2563在Ubuntu 16.04上安装Odoo8 一、安 ... -
ODOO9 SAAS 全自动安装脚本 基于Ubuntu 14.04 LTS
2016-05-09 10:37 2479install-odoo-saas.sh #! ... -
MySQL同类记录获取最新一条
2016-03-28 13:36 1527表结构如下: MySQL> SELECT * FRO ... -
Mybatis Generator配置详解(中文)_转
2015-12-17 16:44 909来自: http://www.jianshu.com/p/e ... -
一个提供大量数据模型的网站
2015-12-17 14:00 970网站地址是:http://www.databaseansw ... -
SQL Server Base64函数
2015-12-09 13:41 1414IF OBJECT_ID(N'dbo.c_GetUTF8Cod ... -
Odoo安装脚本
2015-08-17 23:25 1227#!/bin/bash ################# ... -
MyBatis配置文件修改侦测及重载的实现
2015-07-31 13:53 2323MyBatis配置文件修改侦测及重载的实现: /** ... -
Hive安装配置过程中出现的错误
2015-05-30 22:11 11961、hive CLI启动时报错:(hadoop-2.6+ ... -
Hibernate计算从表记录数
2015-03-30 10:01 653有一个主表,其中一个字段是从表对应的记录数,为 ... -
一个异构数据库的集群中间件(转)
2014-12-22 14:41 852Product: Sequoia Database C ... -
在MS SQLServer中创建链接服务器
2014-12-03 15:11 913要在MS SQLServer中使用链接服务器,对方数据库使用 ... -
在SQLServer上,把从表某字段拼成一个值
2014-07-14 10:08 742--> 测试数据:[father] if ob ... -
SQL Server Base64函数
2014-06-06 11:58 1295IF OBJECT_ID(N'dbo.c_GetUTF8Co ...
相关推荐
对于初学游戏者的帮助比较大的,其中有单片机,ARM,数据结构,window编程,MFC编程,cocos2dx,unity3d自己编写的小游戏
《Unity游戏开发中的数据库管理:SimpleSQL 2.13.0详解》 在Unity游戏开发中,数据管理是至关重要的部分,它涉及到游戏逻辑、玩家进度、资源存储等多个环节。传统的SQLite或XML等数据存储方式往往需要编写复杂的...
**Go-Simplesql:轻松处理关系数据库** `go-simplesql` 是一个针对Go语言的轻量级工具库,旨在简化与关系数据库的交互,降低开发人员在代码中频繁编写SQL语句的需求。通过对象映射技术,它允许开发者以更面向对象的...
SimpleSQL helps you integrate database storage into your game or project. Create level map links, store player stats, keep inventory specs, and much more!
SimpleSQL helps you integrate database storage into your game or project. Create level map links, store player stats, keep inventory specs, and much more! Please note that SimpleSQL is a local ...
https://assetstore.unity.com/packages/tools/integration/simplesql-3845 unity资源商店最新版本,真2.8.0版本,需要的可放心下载。
SimpleSQL helps you integrate database storage into your game or project. Create level map links, store player stats, keep inventory specs, and much more! Please note that SimpleSQL is a local ...
2. **连接测试**:部署完成后,可以在VS2008中通过SQL Server对象资源管理器连接到数据库,或者使用其他SQL Server客户端工具(如SQL Server Management Studio)来连接并执行查询操作,以验证数据库的正确性。...
SimpleSQL.unitypackage 客户端简易SQL,方便存储数据
【学生信息查询服务SQL数据库版】是一个针对教育领域设计的应用,它提供了全面的学生信息查询功能。这个服务包括了服务端和客户端两大部分,确保用户能够方便地获取和管理学生相关数据。服务端作为系统的后端处理...
Unity SimpleSQL_v2.11.1 是Unity简单的本地数据持久化功能,可用在Android、iOS、win、Mac 设备上运行
### 使用简单恢复模式对SQL Server数据库进行收缩 在SQL Server中,随着业务的增长与时间的推移,数据库文件(.mdf)和日志文件(.ldf)可能会变得非常庞大,即使数据库中的实际数据量并没有那么大。在这种情况下,...
https://assetstore.unity.com/packages/tools/integration/simplesql-3845 unity资源商店最新版本,真2.8.0版本,需要的可放心下载。
simpleSQL可将数据库存储集成到您的游戏或项目中。创建水平地图链接,存储球员的统计资料,保持库存规格,以及更多! 请注意,simpleSQL是本地数据库解决方案,不能连接到服务器数据库 将SQLite数据库附加到场景中的...
SimpleSQL 2.13.0.unitypackage UnitySQL插件 直接用实体类存储
### SQL数据库备份与恢复 在IT领域,尤其是数据库管理中,**SQL数据库备份与恢复**是确保数据安全、实现业务连续性的关键环节。无论是对于小型企业还是大型组织,数据的完整性与可恢复性都是至关重要的。本文将深入...
SQL Server 创建数据库 SQL Server 创建数据库是指在 SQL Server 中创建一个新的数据库,以便存储和管理数据。以下是创建数据库的知识点: 1. 创建数据库的步骤: - 定义数据库:定义数据库的名字、大小、文件...
本项目的核心是“邮件自动接收,并写入SQL数据库”,结合“邮件”这一标签,我们可以深入探讨如何实现这样的功能,以及它可能涉及的相关技术。 首先,邮件自动接收通常涉及到邮件服务器的设置与编程接口的使用。...
### SQL Server 2008 收缩数据库脚本知识点详解 #### 一、脚本概述 本脚本主要用于在SQL Server 2008环境中对数据库进行收缩操作。脚本包含了备份数据库、设置恢复模式以及调整日志文件大小等步骤。在执行前需确保...
- 使用T-SQL命令`ALTER DATABASE [数据库名] SET RECOVERY SIMPLE WITH NO_WAIT;`将数据库的恢复模式临时更改为简单模式。 - 在简单恢复模式下,数据库不会保留完整的事务日志记录,这有助于减少日志文件的大小。 ...