﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-Kira-2006-文章分类-hsql</title><link>http://www.blogjava.net/Kira-2006/category/30549.html</link><description>-仅仅是一阵风也罢了,偏偏是这样永恒,  仅仅是一场梦也罢了,偏偏是如此的真实,</description><language>zh-cn</language><lastBuildDate>Sat, 26 Apr 2008 12:37:47 GMT</lastBuildDate><pubDate>Sat, 26 Apr 2008 12:37:47 GMT</pubDate><ttl>60</ttl><item><title>Ant操作hsql数据库</title><link>http://www.blogjava.net/Kira-2006/articles/196291.html</link><dc:creator>Kira-2006</dc:creator><author>Kira-2006</author><pubDate>Sat, 26 Apr 2008 10:25:00 GMT</pubDate><guid>http://www.blogjava.net/Kira-2006/articles/196291.html</guid><wfw:comment>http://www.blogjava.net/Kira-2006/comments/196291.html</wfw:comment><comments>http://www.blogjava.net/Kira-2006/articles/196291.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/Kira-2006/comments/commentRss/196291.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/Kira-2006/services/trackbacks/196291.html</trackback:ping><description><![CDATA[<p>使用Ant操作hsql数据库的例子：<br />
<br />
&lt;?xml version="1.0"?&gt;</p>
<p>&lt;project name="timexdb"&gt;<br />
&nbsp;&lt;property name="hjar" value="WebRoot/WEB-INF/lib/hsqldb.jar" /&gt;<br />
&nbsp;&lt;property name="hclass" value="org.hsqldb.Server" /&gt;<br />
&nbsp;&lt;property name="hfile" value="-database.0 data/gogoudb" /&gt;<br />
&nbsp;&lt;property name="halias" value="gogou" /&gt;<br />
&nbsp;&lt;property name="hport" value="9005" /&gt;</p>
<p>&nbsp;&lt;target name="starthsql"&gt;<br />
&nbsp;&nbsp;&lt;java fork="true" <br />
&nbsp;&nbsp;&nbsp;classname="${hclass}" <br />
&nbsp;&nbsp;&nbsp;classpath="${hjar}" <br />
&nbsp;&nbsp;&nbsp;args="${hfile} -dbname.0 ${halias} -port ${hport}" /&gt;<br />
&nbsp;&lt;/target&gt;</p>
<p>&nbsp;&lt;target name="execddl"&gt;<br />
&nbsp;&nbsp;&lt;sql classpath="${hjar}" <br />
&nbsp;&nbsp;&nbsp;driver="org.hsqldb.jdbcDriver" <br />
&nbsp;&nbsp;&nbsp;url="jdbc:hsqldb:hsql://localhost:${hport}/${halias}" <br />
&nbsp;&nbsp;&nbsp;userid="sa" <br />
&nbsp;&nbsp;&nbsp;password="" <br />
&nbsp;&nbsp;&nbsp;print="yes"&gt;<br />
<br />
-- SQL script for TimeX<br />
-- Step 1: Drop objects if they exist<br />
DROP TABLE Department IF EXISTS;<br />
DROP TABLE Employee IF EXISTS;<br />
DROP TABLE Timesheet IF EXISTS;<br />
DROP INDEX TimesheetIndex IF EXISTS;<br />
DROP INDEX DepartmentCodeIndex IF EXISTS;<br />
DROP INDEX EmployeeIdIndex IF EXISTS;<br />
DROP TABLE customer IF EXISTS;<br />
DROP TABLE Item IF EXISTS;<br />
DROP TABLE Item_subType IF EXISTS;<br />
DROP TABLE Item_superType IF EXISTS;<br />
DROP TABLE orders IF EXISTS;<br />
&nbsp;&nbsp;&nbsp;<br />
-- Step 2: Create tables<br />
CREATE TABLE Item_superType<br />
(<br />
&nbsp;&nbsp; superID BIGINT primary key,<br />
&nbsp;&nbsp; superTypeName VARCHAR(20) NOT NULL<br />
);</p>
<p>CREATE TABLE Item_subType<br />
(<br />
&nbsp;&nbsp; subID BIGINT primary key,<br />
&nbsp;&nbsp; superID BIGINT,<br />
&nbsp;&nbsp; subTypeName VARCHAR(20) NOT NULL,<br />
&nbsp;&nbsp; FOREIGN KEY(superID) REFERENCES Item_superType(superID) <br />
);</p>
<p>CREATE TABLE Item<br />
(<br />
&nbsp;&nbsp; itemID BIGINT primary key,<br />
&nbsp;&nbsp; subID BIGINT,<br />
&nbsp;&nbsp; itemName VARCHAR(20) NOT NULL,<br />
&nbsp;&nbsp; Introduce VARCHAR(50) ,<br />
&nbsp;&nbsp; Price VARCHAR(6) NOT NULL,<br />
&nbsp;&nbsp; nowPrice VARCHAR(6) NOT NULL,<br />
&nbsp;&nbsp; smallPicture VARCHAR(10) NOT NULL,<br />
&nbsp;&nbsp; bigPicture VARCHAR(10) NOT NULL,<br />
&nbsp;&nbsp; inTime datetime ,<br />
&nbsp;&nbsp; newItem INT ,<br />
&nbsp;&nbsp; Rebate INT ,<br />
&nbsp;&nbsp; Hit INT ,<br />
&nbsp;&nbsp; FOREIGN KEY(subID) REFERENCES Item_subType(subID)<br />
);</p>
<p>CREATE TABLE customer<br />
(<br />
&nbsp;&nbsp;&nbsp; userID BIGINT IDENTITY,<br />
&nbsp;&nbsp;&nbsp; username VARCHAR(20) NOT NULL,<br />
&nbsp;&nbsp;&nbsp; Password&nbsp; VARCHAR(20) NOT NULL,<br />
&nbsp;&nbsp;&nbsp; userCity&nbsp; VARCHAR(20) ,<br />
&nbsp;&nbsp;&nbsp; userEmail&nbsp; VARCHAR(20) NOT NULL,<br />
&nbsp;&nbsp;&nbsp; userAge&nbsp; INT ,<br />
&nbsp;&nbsp;&nbsp; userSex&nbsp; INT<br />
&nbsp;);<br />
&nbsp;&nbsp;&nbsp; &nbsp;<br />
CREATE TABLE orders<br />
(<br />
&nbsp;orderID BIGINT IDENTITY,<br />
&nbsp;&nbsp;&nbsp; consigneeName VARCHAR(20) NOT NULL,<br />
&nbsp;&nbsp;&nbsp; consigneeAddress VARCHAR(20) NOT NULL,<br />
&nbsp;&nbsp;&nbsp; Postalcode VARCHAR(6) NOT NULL,<br />
&nbsp;&nbsp;&nbsp; Telephone VARCHAR(20) NOT NULL,<br />
&nbsp;&nbsp;&nbsp; carryMethod VARCHAR(10) NOT NULL,<br />
&nbsp;&nbsp;&nbsp; Orderdate&nbsp; datetime&nbsp;&nbsp; <br />
);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;<br />
CREATE TABLE visualOrder<br />
(<br />
&nbsp;&nbsp;&nbsp;&nbsp; id BIGINT&nbsp; IDENTITY, <br />
&nbsp;&nbsp;&nbsp;&nbsp; itemID BIGINT,<br />
&nbsp;&nbsp;&nbsp;&nbsp; userID BIGINT,<br />
&nbsp;&nbsp;&nbsp;&nbsp; orderID BIGINT,<br />
&nbsp;&nbsp;&nbsp;&nbsp; itemNumber BIGINT NOT NULL,<br />
&nbsp;&nbsp;&nbsp;&nbsp; FOREIGN KEY(itemID) REFERENCES Item(itemID),<br />
&nbsp;&nbsp;&nbsp;&nbsp; FOREIGN KEY(userID) REFERENCES customer(userID),<br />
&nbsp;&nbsp;&nbsp;&nbsp; FOREIGN KEY(orderID) REFERENCES orders(orderID)<br />
);<br />
<br />
-- Step 3: Create indexes<br />
CREATE UNIQUE INDEX visualOrderIndex ON visualOrder (userID);<br />
CREATE UNIQUE INDEX ItemIndex ON Item (itemID);<br />
CREATE UNIQUE INDEX userIdIndex ON customer (userId);<br />
&nbsp;&nbsp;&nbsp;<br />
create view newItem_statistic as&nbsp; select * from item where item.newItem = 1;<br />
create view saleItem_statistic as&nbsp; select * from item where item.Rebate = 1;</p>
<p>-- Step 4: Insert some reference and test data<br />
INSERT INTO customer (userName, Password,userEmail) <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; VALUES ('kira', 'kira','xuguoliang@sina.com');</p>
<p><br />
-- Step 5: Verify tables and test data look ok<br />
SELECT * FROM customer;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/sql&gt;<br />
&nbsp;&lt;/target&gt;<br />
&nbsp;&lt;target name="hsqldm"&gt;<br />
&nbsp;&nbsp;&lt;java fork="true" classpath="${hjar}" classname="org.hsqldb.util.DatabaseManagerSwing" /&gt;<br />
&nbsp;&lt;/target&gt;<br />
&nbsp;&lt;target name="sqltool"&gt;<br />
&nbsp;&nbsp;&lt;java fork="true" classpath="${hjar}" classname="org.hsqldb.util.SqlTool" args="localhost-sa" /&gt;<br />
&nbsp;&lt;/target&gt;<br />
&lt;/project&gt;</p>
<img src ="http://www.blogjava.net/Kira-2006/aggbug/196291.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/Kira-2006/" target="_blank">Kira-2006</a> 2008-04-26 18:25 <a href="http://www.blogjava.net/Kira-2006/articles/196291.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>hsqldb编写批处理文件启动自己创建的数据库</title><link>http://www.blogjava.net/Kira-2006/articles/190208.html</link><dc:creator>Kira-2006</dc:creator><author>Kira-2006</author><pubDate>Tue, 01 Apr 2008 13:54:00 GMT</pubDate><guid>http://www.blogjava.net/Kira-2006/articles/190208.html</guid><wfw:comment>http://www.blogjava.net/Kira-2006/comments/190208.html</wfw:comment><comments>http://www.blogjava.net/Kira-2006/articles/190208.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/Kira-2006/comments/commentRss/190208.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/Kira-2006/services/trackbacks/190208.html</trackback:ping><description><![CDATA[<span lang="EN-US" style="font-size: 12pt; font-family: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">&nbsp;&nbsp;&nbsp;&nbsp;hsql</span><span style="font-size: 12pt; font-family: 宋体; mso-bidi-font-family: 宋体; mso-font-kerning: 0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">数据库是一款纯<span lang="EN-US">Java</span>编写的免费数据库，许可是<span lang="EN-US">BSD-style</span>的协议，如果你是使用<span lang="EN-US">Java</span>编程的话，不凡考虑一下使用它，相对其他数据库来说，其体积小，我使用的是hsqldb1_8_0_7,压缩包大小为3.12M。仅一个<span lang="EN-US">hsqldb.jar</span>文件就包括了数据库引擎，数据库驱动，还有其他用户界面操作等内容。<br />
&nbsp;&nbsp;&nbsp;&nbsp;看了一下网上的一些hsqldb的资料，大多数数据库的启动和用户界面的操作都在命令行中进行操作，o(&#8745;_&#8745;)o...哈哈，感觉有点麻烦。在hsqldb的压缩包中，有个自带的数据库test，它的启动和用户界面操作都是直接有一个批处理文件来执行，很方便。其实我们就可以根据这两个批处理文件来写自己创建的数据库的批处理文件。<br />
&nbsp;&nbsp;&nbsp;&nbsp;hsqldb自带数据库的启动批处理文件，在压缩包中，demo/runServer.bat文件，右键&#8220;编辑&#8221;，可以看到文件中的内容为：<br />
<font face="宋体">cd ..\data<br />
@java -classpath ../lib/hsqldb.jar org.hsqldb.Server %1 %2 %3 %4 %5 %6 %7 %8 %9<br />
</font>即启动在data目录下的系统自带的数据库test。<br />
如果你要在db目录下创建，并启动数据库mydb。就可以编写批处理文件：<br />
cd ..\db<br />
@java -classpath ../lib/hsqldb.jar org.hsqldb.Server -database.0 mydb -dbname.0 mydb<br />
用户界面的操作可以同样的方式进行编写批处理文件。</span> 
  <img src ="http://www.blogjava.net/Kira-2006/aggbug/190208.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/Kira-2006/" target="_blank">Kira-2006</a> 2008-04-01 21:54 <a href="http://www.blogjava.net/Kira-2006/articles/190208.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>