`
hellodesigner
  • 浏览: 11234 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

一个比较实用的数据库查看管理工具

阅读更多

       个人从业四年多,和数据库打交道不计其数,特别是在之前做企业级应用系统的时候,整天就是在业务、数据和程序之间穿梭,那个数据查的呀,平均每天有40% 左右的时间都在手工的写sql进行数据的查询。刚开始,通过数据库自带的命令行工具查数据似乎蛮好的,至少提供的功能非常的多,通过命令可以获得数据库相 关的所有信息,但是开发人员经常使用的功能还是写sql进行数据的查询、更新、删除、插入,特别是在企业级应用程序的开发,sql相对比较复杂,而且数量 会很大,如果考虑提高开发效率,一个可视化的数据库client工具就非常有必要了。当然了,一些比较高傲的大虾们可能会对这类工具嗤之以鼻,但一个优秀 的数据库client工具能够提高开发效率的事实却不能被抹杀,所以我还是建议开发人员经常使用这类工具。

       搞了这么几年的开发,使用了不少数据库client工具,有非常专业的,有商业的,也有免费开源的。我不能说哪个工具好,哪个不好,因为每个人的使用习惯和需求不一样,今天给大家介绍一款自认为比较使用的工具:COOLSQL。

        COOLSQL是一款开源的数据库查看管理工具。该工具以数据查询、分析为主,同时也提供了一定的管理功能,并且COOLSQL的可操作性比较好,这也是我选择这款工具的主要原因。下面我就给大家show一下这款工具的功能,以及特点。

       COOLSQL的界面以视图为单位(类似于eclipse的视图概念),由书签视图、sql编辑视图、执行结果视图、日志视图组成,我也以视图为单位进行介绍COOLSQL的功能:

       1、书签视图:在COOLSQL中,书签可以理解为一个Database,实际上是一个Database的映射。每个书签连接上数据库后,将会以树状结构展示数据库的实体结构。如图Figure1所示:

 

                                                         Figure1

 

Database树状结构中不同类型的节点提供了丰富的功能。最典型的就是Table类型节点提供了我们常用的数据查看功能菜单。

      2、SQL编辑视图:该视图的功能就十分明显了,主要进行sql编辑以及查看的。该sql编辑器提供了很多其他同类工具所没有的功能。除了最基本的复制、粘贴、撤销、重做、查找等功能外,SQL关键字高亮也是比较基本的功能。其他一些比较好的功能我也总结了一下:

  • 提供列选择(按下alt键)。
  • 选中当前光标位置的sql(默认根据";"来识别),并提供了快捷键(F3选中sql,F4执行选中)。
  • 提供行号显示。
  • 选中文本的大小写调整。
  • 支持行/块注释。
  • 支持SQL的格式化。
  • 支持脚本的执行。
  • 支持SQL的非自动提交(NON-AUTOCOMMIT)
  • 不同类型关键字的高亮显示(命令、系统函数、文本值、数值、注释)。
  • 提供数据信息的提示(alt + /)。
  • 数据库实体对象的定位跟踪(按下ctrl键,移动鼠标),能直接定位到数据库结构树中的节点。
  • 提供历史SQL的查看。
  • 提供SQL收藏功能,方便常用SQL的快速获取、执行。
  • 直接对查询类型SQL的数据导出。

 

     3、结果展示视图:该视图主要用于显示SQL命令的执行结果(包括查询、更新、删除、插入),该视图也提供了一些比较有特色的功能:

  • 查询结果以分页形式显示(速度非常快,主要限制了所取数据的上限),同时也提供了全部查看功能。
  • sql执行时间、影响的数据条数(修改类型sql执行结果)的显示。
  • 查询类型的展示结果,如果只是针对一个实体对象的数据查看,用户将可以直接在table组件上进行编辑值。查询类型结果是否可编辑可以通过该视图下左下角的图标颜色来判定。
  • 对于数据的直接编辑,该视图提供了非常友好的操作界面以及比较安全的信息提示。
  • 另外也提供了另外一种可视化的UPDATE构造(个人认为该功能不是很有必要)。

 

此外还有一个功能是十分实用,并且功能也是十分强大的,这里要强烈推荐一下:数据库实体数据的可视化添加。该功能将在一个新窗口中体现,直接在结果集视图中可以触发该功能,或者在书签视图的数据库结构树中直接对Table/view节点触发该功能。其特点如下:

  • 支持表格数据的复制,以及智能粘贴(可以自己体会一下,个人觉得很不错)。
  • 支持字段数据的合法性检查(会以高亮显示)。
  • 支持字段值的连续拖拉(有点像EXCEL,鼠标放在选中表格的右下角,就会变成十字形状,然后拖拉),这一功能为开发、测试的同学们造数据提供了很大的便利性。
  • 支持SQL的预览、导出。
  • 支持表格值的批量设置。

4、日志视图:提供了日志的显示,记录包括SQL执行结果、非法操作的错误信息。并且日志信息按等级显示(级别类似于Log4j),用户自己可以定制日志的显示级别。

 

 

      对于CoolSQL提供的视图,我就介绍完了。但我还想总结一下CoolSQL的其他特性:

  • 支持插件扩展,sqlscript就是它的一个插件。
  • CoolSQL能运行在提供了JAVA运行环境的操作系统平台之上。
  • 支持当前所有的主流数据库。
  • 提供了多种外观,当然如果想要性能好一点,建议使用Metal(金属质感)外观。

 

      我只是从大的方面说了它的一些特点,还有很多细节上的东西也做得十分的好。希望对开发和测试的同学们有点帮助。

对了,差点忘了CoolSQL的下载地址了:

                                              http://coolsql.sourceforge.net/

 

 

  • 描述: bookmarkview
  • 大小: 25.2 KB
2
0
分享到:
评论
5 楼 hellodesigner 2009-09-06  
ivy1107 写道
Hi hellodesigner,
为什么我在连接数据库A(概有3,40张表)的时候总是出现out of memory错误,而我建立了一个测试数据库B(只有几张表)却没有问题?可以看到类似于你文章中截图的画面。是不是因为数据库A的表太多了,有没有解决办法?
另外,我觉得这个工具的最大优点是可以同时连接多种数据库,对做稍微底层开发工作,需要支持多种数据库产品的应用时,优点更为明显。
谢谢



我曾经测试过拥有1500张表的db2数据库,没有出现out of memory,请问一下你使用的数据库类型是什么。另外在执行什么操作的时候,出现了out of memory?
4 楼 ivy1107 2009-08-18  
Hi hellodesigner,
为什么我在连接数据库A(大概有3,40张表)的时候总是出现out of memory错误,而我建立了一个测试数据库B(只有几张表)却没有问题?可以看到类似于你文章中截图的画面。是不是因为数据库A的表太多了,有没有解决办法?
另外,我觉得这个工具的最大优点是可以同时连接多种数据库,对做稍微底层开发工作,需要支持多种数据库产品的应用时,优点更为明显。
谢谢
3 楼 hellodesigner 2008-08-27  
对于大部分的应用场景,功能不需要太多,方便、实用才是最重要的。
2 楼 hellodesigner 2008-08-27  
    顺便把各数据库的jdbc驱动下载地址贴出来吧:
Microsoft SQL Server (6.5, 7, 2000 and 2005) and Sybase (10, 11, 12). 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
JDBC Name: jTDS
Home Page: http://jtds.sourceforge.net/
JDBC Ver: 1.0.2
Download: http://sourceforge.net/project/showfiles.php?group_id=33291
Conn Code:
   Class.forName("net.sourceforge.jtds.jdbc.Driver ");
   Connection con = DriverManager.getConnection("jdbc:jtds:sqlserver://host:port/database","user","password");
or
   Connection con = DriverManager.getConnection("jdbc:jtds:sybase://host:port/database","user","password");

Microsoft SQL Server 2000
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
JDBC Name: SQL Server 2000 Driver for JDBC
Home Page: http://www.microsoft.com/china/sql/
JDBC Ver: (SQL Server 2000 Driver for JDBC)
Download: http://www.microsoft.com/china/sql/downloads/2000/jdbc.asp
Conn Code:
   Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); 
   Connection conn = DriverManager.getConnection ("jdbc:microsoft:sqlserver://server1:1433","user","password");

Oracle
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
JDBC Name: Connector/J 
Home Page: http://www.oracle.com/technology/software/tech/java/
JDBC Ver: (based on Oracle)
Download: http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/
Conn Code:
   Class.forName("oracle.jdbc.driver.OracleDriver");
   Connection con = DriverManager.getConnection("jdbc:oracle:thin:@host:port:databse","user","password");

MySQL
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
JDBC Name: Connector/J
Home Page: http://dev.mysql.com/
JDBC Ver: 3.1
Download: http://dev.mysql.com/downloads/
Conn Code:
   Class.forName("com.mysql.jdbc.Driver");
   Connection con = DriverManager.getConnection("jdbc:mysql://host:port/database","user","password");

Sybase
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
JDBC Name: jConnect 
Home Page: http://www.sybase.com.cn/cn/content/SDN/
JDBC Ver: 4.5/5.5
Download: http://www.sybase.com/detail_list?id=13&morenavId=8668&multi=true&SR=Y&show=1265
Conn Code:
Class.forName("com.sybase.jdbc2.jdbc.SybDriver").newInstance();
DriverManager.getConnection("jdbc:sybase:Tds:IP:2638?ServiceName="+database,"user","password");

Postgresql
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
JDBC Name: PostgreSQL JDBC
Home Page: http://jdbc.postgresql.org/
JDBC Ver: 8.0 Build 310
Download: http://jdbc.postgresql.org/download.html
Conn Code:
   Class.forName("org.postgresql.Driver"); 
   Connection con = DriverManager.getConnection("jdbc:postgresql://host:port/database","user","password");

IBM Informix
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
JDBC Name: Informix JDBC Driver (IBM Informix JDBC V3.0)
Home Page: http://www-306.ibm.com/software/data/informix/
JDBC Ver: 3.0.JC1
Download: http://www14.software.ibm.com/webapp/download/search.jsp?go=y&rs=ifxjdbc
Conn Code:
   Class.forName("com.informix.jdbc.IfxDriver").newInstance(); 
   Connection conn= DriverManager.getConnection("jdbc:informix-sqli://123.45.67.89:1533/myDB:INFORMIXSERVER=myserver;user=testuser;password=testpassword";);

IBM DB2
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
JDBC Name: DB2 JDBC Universal Driver
Home Page: http://www-306.ibm.com/software/data/db2/udb/ 
JDBC Ver: 
Download: http://www-128.ibm.com/developerworks/db2/downloads/jcc/
Conn Code:
   Class.forName("com.ibm.db2.jdbc.app.DB2Driver ").newInstance(); 
   Connection conn= DriverManager.getConnection("jdbc:db2://localhost:5000/sample",user,password); 

IBM AS400主机在用的JDBC语法
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  有装V4R4以上版本的Client Access Express
  可以在C:"Program Files"IBM"Client Access"jt400"lib
  找到 driver 档案 jt400.zip,并更改扩展名成为 jt400.jar
Conn Code:
   java.sql.DriverManager.registerDriver (new com.ibm.as400.access.AS400JDBCDriver ());
   Class.forName("com.ibm.as400.access.AS400JDBCConnection");
   con = DriverManager.getConnection("jdbc:as400://IP","user","password"); 

   Db Name: Ms Access or Ms Foxpro
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Conn Code:
   step 1: 配置 odbc (例如:myDb)
   step 2: 
   String dbURL = "jdbc:odbc:myDb";
   Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
 Connection conn = DriverManager.getConnection(dbURL); 
or
   String dbURL = "jdbc:odbc:driver={MicrosoftAccessDriver(*.mdb)};DBQ=dabaseName.mdb";
   Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
 Connection conn = DriverManager.getConnection(dbURL);
1 楼 dreamit 2008-08-26  
不如用EMS SQL admin

相关推荐

    绿色的数据库查看管理工具

    通过该工具,用户可以直接执行SQL语句,进行数据查询、更新、删除以及数据库结构的维护,对于数据库管理员和开发者来说,这是一个非常实用的功能。 再者,Excel的兼容性使工具在数据分析领域更具优势。Excel是微软...

    瀚高数据库管理工具瀚高数据库管理工具

    瀚高数据库管理工具是一款专为瀚高数据库设计的专业管理软件,它提供了全面、高效且易用的功能,旨在帮助用户更方便地进行数据库的创建、维护和优化。在这款工具中,用户可以执行SQL查询,管理数据,监控数据库性能...

    国产数据库 达梦数据库管理工具

    达梦数据库管理工具是专为国产数据库达梦设计的一款高效、易用的管理软件,它提供了全面的数据库管理和维护功能,旨在帮助用户更好地管理和优化他们的数据存储系统。这款工具不仅适用于数据库管理员,也适合开发人员...

    FireBird 数据库管理工具

    官方出品的FireBird数据库管理工具,通常包括一系列用于数据库管理、监控、备份、恢复和数据迁移的实用程序。这些工具通常包括: 1. gbak:这是FireBird的主要备份工具,用于创建数据库的完整备份或增量备份,并...

    神舟通用数据库管理工具

    神舟通用数据库管理工具,正如其名,是一款专为数据库管理人员设计的强大软件,类似于业界知名的Navicat,它集成了多种功能,帮助用户轻松进行数据迁移,特别是从MySQL到神通数据库的操作。本文将深入探讨这款工具的...

    Mysql数据库管理工具-GPH N11

    GPH N11是一款基于Mysql数据库的管理工具,它支持...总的来说,GPH N11是一款非常强大的Mysql数据库管理工具,它可以帮助用户管控多个数据库,并提供了许多可视化工具和功能,让用户能够更加方便地管理和优化数据库。

    数据库MSDE管理工具

    在压缩包子文件的文件名称列表中,我们看到"数据库MSDE管理工具.exe",这通常是一个可执行文件,表明提供的是一个安装程序,用户可以通过运行它来安装和使用这个数据库管理工具。这个工具很可能是用于图形化界面操作...

    asp数据库查看器,mdb数据库管理工具

    “asp数据库查看器”和“mdb数据库管理工具”是针对这种特定需求而设计的应用程序,它们允许用户方便地查看和管理ASP应用中使用的MDB数据库。这些工具通常具有以下功能: 1. 数据浏览:用户可以通过这些工具直观地...

    litedb数据库管理工具

    litedb数据库管理工具

    DbTools数据库管理工具(Web版)

    DbTools数据库管理工具,DbTools在线ACCESS/MSSQL数据库管理工具,但界面和操作挺方便的,可以在线对ACCESS或MSSQL2000数据库进行表、库的查看、添加、编辑、删除、运行查询等操作。

    sqlite3数据库查看工具

    例如,"SQLiteSpy.exe"很可能就是一个这样的工具,它提供了诸如浏览表格、执行SQL命令、查看索引和触发器等功能,以帮助用户高效地管理和分析SQLite数据库。 "World.db3"文件是SQLite3数据库文件的实例,可能包含了...

    InfluxDB数据库管理工具

    本文将深入探讨InfluxDB数据库管理工具,以及如何通过这些工具来连接远程InfluxDB数据库,执行InfluxQL语句,查看库、表结构和保存策略等操作。 首先,让我们关注"连接远程InfluxDB数据库"这一环节。在使用InfluxDB...

    Web版的数据库管理工具

    因此,Web版的数据库管理工具应运而生,它们为用户提供了一个基于浏览器的界面,使得在任何地方都可以便捷地访问和管理数据库。 【描述】这个Web版本的数据库连接工具是用Java和Angular技术栈构建的,这是一种现代...

    sqlite 数据库管理工具

    总的来说,SQLite Studio作为一款轻量级的SQLite数据库管理工具,通过其直观的界面和实用的功能,为用户提供了高效管理SQLite数据库的途径,尤其适合那些不熟悉命令行操作或寻求简化数据库管理流程的用户。

    数据库管理工具hedisql

    数据库管理是IT行业中至关重要的一个领域,特别是在大数据和云计算时代,高效、便捷的数据库管理工具显得尤为重要。HediSQL是一款备受推崇的数据库管理工具,它以其简洁的界面、强大的功能和出色的性能,赢得了广大...

    asp.net数据库管理工具

    文件名称列表中的"WEB SQL数据库管理工具_web_sql_manager"可能是一个特定的数据库管理工具,或者是教程、示例项目,用于演示如何在ASP.NET Web应用中实现自定义的数据库管理功能。这个工具可能包含前端页面和后端...

    SQL数据库管理工具_

    对于压缩包文件"SQL数据库管理工具_4.0RC1_Setup",这可能是一个安装程序,用于在用户的计算机上安装这个特定版本的数据库管理工具。安装过程中,用户通常需要接受许可协议、选择安装路径、配置连接设置,并可能有...

    Android中SQLite数据库查看工具

    SQLite是一个进程内的库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。它是一个零配置的数据库,这意味着与其他数据库不一样,您不需要在系统中配置。 就像其他数据库,SQLite 引擎不是一个...

    28款经典数据库管理工具

    phpMyAdmin 是一个流行的基于 Web 的 MySQL 数据库管理工具,具有以下特点: - **Web 界面**:通过浏览器访问,无需安装客户端软件。 - **数据库操作**:可以创建、删除数据库,管理用户权限等。 - **表管理**:...

    数据库对比工具(支持sqlserver ,oracle)

    本工具特别针对SQL Server和Oracle两大主流数据库系统提供了全面的支持,使得数据库管理员和开发人员能够高效地识别并管理两个数据库之间的差异。 首先,我们来详细了解SQL Server和Oracle数据库系统。SQL Server是...

Global site tag (gtag.js) - Google Analytics