HSQLDB的大样本数据库?

时间:2011-09-23 16:16:51

标签: database dataset hsqldb test-data

我正在上一个数据库类,我想要一个大样本数据库来试验。我在这里对large的定义是数据库中有足够的数据,因此如果我尝试的查询非常低效,我将能够判断执行所需的时间。我已经google了这个并没有找到任何特定的HSQLDB,但也许我使用了错误的关键字。基本上我希望找到已经设置好的东西,包括表格,主键等等,并将其归一化,所以我可以在一个有点现实的数据库上尝试。对于HSQLDB,我猜这只是.script文件。无论如何,如果有人知道任何资源,我真的很感激。

1 个答案:

答案 0 :(得分:1)

您可以使用MySQL Sakila数据库架构和数据(开源,在MySQL网站上),但您需要修改架构定义。您可以删除实验所不需要的视图和触发器定义。例如:

CREATE TABLE country (
  country_id SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT,
  country VARCHAR(50) NOT NULL,
  last_update TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY  (country_id)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;

改性:

CREATE TABLE country (
  country_id SMALLINT GENERATED BY DEFAULT AS IDENTITY,
  country VARCHAR(50) NOT NULL,
  last_update TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY  (country_id)
)

HSQLDB的MYS语法模式支持某些MySQL DDL语法,例如AUTO_INCREMENT被转换为IDENTITY,但其他人需要手动编辑。除了一些二进制字符串之外,数据大多是兼容的。

您需要使用报告查询时间的工具来访问数据库。当查询输出处于文本模式时,HSQLDB DatabaseManager会执行此操作。