1 连hsqldb
SQLExplorer插件可以通过JDBC访问常用的关系数据库,同时也支持像Hibernate这样的工具访问数据库。其官方站点为http://sourceforge.net/projects/eclipsesql。
本节介绍如何使用SQLExplorer插件,如果要查看用hsqldb建的score内存数据库的具体内容(具体内容来自例子memorydb.java)。首先介绍SQLExplorer插件的安装,然后介绍SQLExplorer插件的具体使用方法。
工作在内存模式下的HSQLDB数据库,会随着程序的退出而关闭,所以在下面的操作中MemoryDB要始终保持运行状态。本章在程序中设置断点,调试运行,使程序保持运行状态。
(1)打开MemoryDB.java文件,在程序行“System.out.println(“在此行上设置一个断点”);”前设置一个断点。
(2)右击“MemoryDB.java”文件,在快捷菜单中选择【调试方式】|【Java应用程序】命令,MemoryDB.java程序调试运行至断点处,建立了内存数据库score。
(3)单击【窗口】菜单,依次选择【打开透视图】|【其它…】命令,打开【选择透视图】对话框,选择“SQLExplorer”,打开SQLExplorer透视图,如图5-2所示。
图5-2 选择SQLExplorer透视图
SQLExplorer透视图有7项内容,分别如下:
● Aliases 别名,用来标识数据库连接串。
● Connection Info 连接信息,用来显示连接数据库时的相关信息,如数据库产品名称、版本、JDBC驱动程序的名称、版本、用户名、连接串、是否自动提交等。
● Connections 显示活动的连接情况。
● Database Structure View显示数据库结构。
● Drivers 配置驱动程序用。
● SQL History 执行SQL的历史记录。
● SQL Results 执行SQL的结果集。
(4)打开如图5-3所示的Drivers视图,右击“HSQLDB In-Memory”,在快捷菜单中选择【Change the selected Driver】命令,打开Modify Driver窗口。
(5)选择【Extra Class Path】选项卡,单击【Add】按钮,在【打开】窗口中选择d:\hsqldb\lib\hsqldb.jar,将HSQLDB数据库的驱动程序加入到classpath中。
(6)在【Example URL】文本框中输入“jdbc:hsqldb:mem:score”,单击【确定】按钮,如图5-4所示。这时,Drivers视图中的“HSQLDB In-Memory”由变成,表示HSQLDB数据库的驱动程序配置成功。
图5-3 Drivers视图 图5-4 配置数据库驱动
(7)打开SQLExplorer插件的Aliases别名视图,单击【创建】图标,打开【Create new Alias】对话框。
(8)在【Name】文本框中输入“hsqlMemoryDB”,选择HSQLDB In-Memory驱动,在【URL】文本框中输入“jdbc:hsqldb:mem:score”,在【User Name】文本框中输入“sa”,单击【确定】按钮,如图5-5所示。在Aliases别名视图中出现刚建立的“hsqlMemoryDB”连接。
(9)右击“hsqlMemoryDB”,在快捷菜单中选择【Open…】命令,弹出有关数据库连接的确认框,可以更改用户名与密码,也可以设置是否自动提交,这里保持所有的选项为默认值。
(10)单击【确定】按钮,在Database Structure View视图中即可看到Database,展开Database树形结构,如图5-6所示。
------------------
2 其它数据库连接
插件介绍:
SQLExplorer是Eclipse集成开发环境的一种插件,它可以被用来从Eclipse连接到一个数据库。SQLExplorer插件提供了一个使用SQL语句访问数据库的图形用户接口(GUI)。通过使用SQLExplorer,能够显示表格、表格结构和表格中的数据,以及提取、添加、更新或删除表格数据。SQLExplorer同样能够生成SQL脚本来创建和查询表格。所以,与命令行客户端相比,使用SQLExplorer可能是更优越的选择。
安装条件:
eclipse-SDK-3.1.2-win32
http://mirrors.nsa.co.il/eclipse/eclipse/downloads/drops/R-3.1.2-200601181600/eclipse-SDK-3.1.2-win32.zip
SQLExplorer_2.2.4
http://puzzle.dl.sourceforge.net/sourceforge/eclipsesql/net.sourceforge.sqlexplorer_2.2.4.zip
一、安装SQLExplorer插件
在这里用link方式来安装SQLExplorer插件,将下载下来的net.sourceforge.sqlexplorer_2.2.4.zip包,解压缩到比如D:\eclipseplugins目录,将net.sourceforge.sqlexplorer_2.2.4目录重新命名为:sqlexplorer_2.2.4目录,改成如下目录结构:D:\eclipseplugins\sqlexplorer_2.2.4\eclipse\plugins\net.sourceforge.sqlexplorer_2.2.4,然后在比如:D:\eclipse-SDK-3.1.2\links新建一个sqlexplorer_2.2.4.link文件,这文件指向sqlexplorer_2.2.4插件所在的目录,也就是D:\eclipseplugins\sqlexplorer_2.2.4目录,重新启动Eclipse,就可以看到sqlexplorer插件了,若没看到,请在eclipse启动参数加上参数-clean,即eclipse.exe -clean,就可以了!如图
在Eclipse中“Window->preferences...“检查sqlexplorer是否安装成功,
表明安装成功!~-~
二、使用SQLExplorer插件
SQLExplorer通过JDBC连接数据库的,包括Oracle、SQLServer、MySQL等流行的关系数据库,因此为了便于加深理解和使用,本例子建立一个从Eclipse到SQL Server2000数据库的JDBC连接,接着将在SQLExplorer图形SQL客户端提取和显示示例数据。
上一节介绍了安装SQLExplorer,接下来在使用SQLExplorer前需要配置,启动Eclipse后,打开SQLExplorer视窗,在Eclipse中集成环境中单击”Open perspective“->”Other...“按钮来打开一个视窗,选择SQLExplorer插件,如图:
就将看到SQLExplorer视窗显示在Eclipse左边中,Drivers标签显示了不同的数据库驱动,它们用来连接不同的数据库,现在可用的数据库包括DB2、Oracle、Sybase、HSQLDB、SQLServer和PostgreSQL,针对SQLServer来配置SQLExplorer,为了配置SQLServer驱动,右击Microsoft MSSQL Server JDBC Driver结点,并且选择 Change the selected Driver,如图
在 Modify driver框中,选择 Extra Class Path 标签,并且单击 Add 按钮将SQLServer驱动.jar文件添加到类路径中,下图显示将SQLServer的JDBC驱动加到 Eclipse 的类路径中。将 Driver 栏中的Example URL改成jdbc:microsoft:sqlserver://server-name:1433,这里的server-name指的是SQLServer服务器名称,比如连接本地数据库改成jdbc:microsoft:sqlserver://localhost:1433即可。
底下的Driver Class Name不需要改,采用默认值即可,如图
若要连接MS SQL Server数据库并提取其中的表格,需要为连接建立一个别名,一个连接的别名说明了连接设置,JDBC驱动、URL、用户名和密码。在SQLExplorer视窗中选择 Aliases 标签,单击“Create new Aliases”按钮来创建一个新的别名,如图
在“Create new Aliases”框中,指定一个别名,选择“Microsoft MSSQL Server JDBC Driver”来为MS SQL Server数据库创建一个别名。在 URL 域中指定数据库的连接 URL,如:jdbc:microsoft:sqlserver://localhost:1433,下图展示了MS SQL Server别名的设置,
以上操作将一个MS SQL Server别名加入到 Aliases标签中,如图所示,若要修改一个别名,右键点击别名结点并选择“Change the selected Alias.”
MS SQL Server别名用来连接到 SQL Server数据库并且从中提取数据,要打开数据库连接,右击MS SQL Server别名结点并选择“Open...”,如图
在 Connection框中,指定登录到 SQL Server数据库使用的用户名和密码,然后点击“OK”按钮,下图展示了登录的设置,缺省情况下,对于 sa用户不需要密码
一个与SQL Server数据库的JDBC连接建立起来了,一旦连接上了,Eclipse就会显示SQL Server数据库中不同的数据库模式,如图
以上完成了对 SQL Server数据库的配置和连接了。
对其他数据库的支持
这个JDBC连接的例子是关于配置与SQL Server数据库连接的,通过在 Drivers标签中为数据库选择合适的驱动,可以配置与其他数据库的JDBC支持,只需为选定的数据库指定驱动类和连接URL,就可以配置与该数据库的JDBC连接,以下列出的是其他数据库的驱动类、连接URL和.jar文件。
DB2
Driver Class:com.ibm.db2.jdbc.app.DB2Driver
Connetion URL:jdbc:db2:<database>
Driver .jar/.zip:db2java.zip
Sybase
Driver Class:com.sybase.jdbc2.jdbc.SybDriver
Connetion URL:jdbc:sybase:Tds:<host>:<porl>/<database>
Driver .jar/.zip:jconn2.jar
Oracle
Driver Class:oracle.jdbc.driver.OracleDriver
Connetion URL:jdbc:oracle:thin:@<host>:<porl>:<sid>
Driver .jar/.zip:classes12.zip
PostgreSQL
Driver Class:org.postgresqlDriver
Connetion URL:jdbc:postgresql://<server>:<port>/<database>
Driver .jar/.zip:postgresql.jar
MySQL
Driver Class:com.mysql.jdbc.Driver
Connetion URL:jdbc:mysql://<server>:<port>/<database>
Driver .jar/.zip:mysql-connector-java-3.0.16-ga-bin.jar
以上列表中,<database>是指数据库实例,<port>是数据库连接端口,<sid>是数据库的SID,<server>是数据库服务器。
访问数据库数据
现在我们将从示例库pubs中的示例表employee提取数据,如果是从一个命令行SQL客户端访问数据库,则使用如下命令来提取数据:
SQL>SELECT * FROM employee
这将以文本表的形式显示数据,使用图形SQL客户端SQLExplorer,数据将以结构表的形式显示,SQLExplorer同样也会生成创建表和从中提取数据的SQL脚本,如果使用DESC命令在一个命令行客户端中显示表格的结构,只有列名、列数据的类型、列数据的长度大小以及非空的值会被显示,有了SQLExplorer,索引、主键和外键值都会被显示
在Eclipse的SQLExplorer视窗中选择Database Structure View标签,为了显示表employee的结构,在Database Structure View中选择“Database->pubs->TABLE->employee”结点,下图显示了表employee的结构,
Columns标签显示了下表中列出的列:
为了显示选中的表格中的数据,请选择 Preview 标签。图中显示了表 employee中的数据。关于表格的其他的信息分别在 Indexes, Primary Key, Foreign Key 和 Row Count 标签中显示。
若想得到创建表格的 SQL 脚本,右击表结点并且选择“ Create Table Script”,如图所示,
如下图所示,这将生成创建被选表格的SQL脚本,并将其显示在SQLExplorer视窗中的SQL Editor中
Database Structure View的“Preview”标签中的数据是使用缺省的 Select 查询提取的,它包括了表格中所有的列。要想显示缺省的 Select 查询语句,右击表结点并且选择“Generate Select in Sql Editor”,如图所示
下图所示,SQL Editor中显示了从表employee中提取数据的缺省查询语句。注意:显示在 SQL Editor 中的 SELECT 查询语句的结尾没有分号(;)
通过以上SQL Editor可以运行select语句,同样也可以运行update语句、delete语句等,都可以比较好执行程序。
通过在 Eclipse 中配置 SQLExplorer 插件,该集成开发环境获得了图形用户界面(GUI)较之命令行客户端的许多优点。
对SQLExplorer 插件感兴趣的开发人员可以试一试,相信对您有很大的帮助!
总结
例子中,我们与MS SQL Server 数据库建立了一个 JDBC 连接,并访问其中的一个示例数据库。SQL Explorer 同样可以被用来配置与其他数据库的连接,包括 DB2, Sybase, Oracle, HSQLDB, SQL Server 和 PostgreSQL。