开发了一个数据库客户端,准备放出来 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
javahuang
V2EX    数据库

开发了一个数据库客户端,准备放出来

  •  
  •   javahuang 2021-01-05 23:48:48 +08:00 5194 次点击
    这是一个创建于 1745 天前的主题,其中的信息可能已经有所发展或是发生改变。

    请问大家觉得一个好的数据库客户端应该具备哪些特性?

    第 1 条附言    2021-01-06 09:27:57 +08:00

    我大概介绍一下现在的已有功能,因为都是利用下班陪娃空闲时间来开发自用的,功能有些简陋

    • 支持多个数据源,目前已配 mysql、oracle
    • 因为是 bs 版的,支持服务端部署,
    • 支持显示 schema,包含表、视图,可以显示主键、索引、注释、数据类型
    • 支持数据库连接池,支持多个标签页,每个标签页可以单独开启一个数据库连接
    • 支持 ddl、多个结果集查询、查询选中、sql 格式化
    • 支持事务的手动提交和自动提交,多个查询结果标签页,支持选中单元格,显示该字段的信息(数据类型、非空信息、注释)
    • 支持分页,自定义分页信息,支持大的结果集展示(基于 canvas 画的,百万数据不卡顿)
    • sql 编辑器支持自动补全,自动补全体验不输于一般的客户端
    • 支持代码片,比如输入 st,自动出现 select * from xx
    • 支持保存查询结果,可以将结果集页面和其他功能模块集成
    • 支持导出结果
    • 支持直接在结果集单元格编辑数据
    • 支持可视化建表
    第 2 条附言    2021-01-14 18:44:59 +08:00
    http://49.232.153.121/
    放个预览版吧,有兴趣的同学可以注册账号看下(我的 1m 的带宽,打开可能会比较慢)。
    38 条回复    2021-01-14 18:46:02 +08:00
    YouLMAO
        1
    YouLMAO  
       2021-01-05 23:54:28 +08:00 via Android
    连接池,sql optimizer, sql cost analysis
    pkupyx
        2
    pkupyx  
       2021-01-06 00:27:10 +08:00
    先达到 mysql workbench 的相同功能
    Foxkeh
        3
    Foxkeh  
       2021-01-06 00:31:20 +08:00 via Android
    智能提示,语法高亮,代码格式化,软件体积小且启动和运行快且稳定,内存占用少,数据库结构和数据比较并生成增量脚本,支持 csv,xls,xlsx,txt 以及自定义格式导入,支持数据库系统迁移如 Oracle > MySQL(包括函数重写)
    yeqizhang
        4
    yeqizhang  
       2021-01-06 00:55:56 +08:00 via Android
    参考一下 dbeaver
    xcstream
        5
    xcstream  
       2021-01-06 01:21:06 +08:00
    方便表格里改数据
    imgbed
        6
    imgbed  
       2021-01-06 08:34:05 +08:00 via Android
    支持 sqlite
    javahuang
        7
    javahuang  
    OP
       2021-01-06 08:51:00 +08:00
    @YouLMAO 连接池已经支持了,sql optimizer, sql cost analysis 这两个请问有啥工具支持的比较好吗,我去看一下,谢谢
    javahuang
        8
    javahuang  
    OP
       2021-01-06 09:00:35 +08:00
    @pkupyx mysql Workbench 太重了哈,个人也没有精力去实现所有功能,我的目标支持大家常用功能的 90% 就可以了。
    javahuang
        9
    javahuang  
    OP
       2021-01-06 09:02:22 +08:00
    @Foxkeh 智能提示,语法高亮,代码格式化,软件体积小且启动和运行快且稳定,内存占用少,这些都能满足了,其他的后面有时间了可以考虑做。感觉回答
    Fitz77777
        10
    Fitz77777  
       2021-01-06 09:04:32 +08:00
    win 还是 mac 啊
    javahuang
        11
    javahuang  
    OP
       2021-01-06 09:06:30 +08:00
    @Fitz77777 java 开发的 bs 版的,全平台支持
    javahuang
        12
    javahuang  
    OP
       2021-01-06 09:07:06 +08:00
    @imgbed 理论上支持 jdbc 的未来都可以支持,我平常主要用 oracle 和 mysql,现在这两个都支持
    javahuang
        13
    javahuang  
    OP
       2021-01-06 09:07:26 +08:00
    @xcstream 可以直接编辑数据的,也支持事务
    vone
        14
    vone  
       2021-01-06 09:17:51 +08:00
    插件系统
    967182
        15
    967182  
       2021-01-06 09:19:35 +08:00
    我在用 IDEA-Datagrip
    linbingcheng
        16
    linbingcheng  
       2021-01-06 09:22:21 +08:00
    有 idea 好用吗
    ice2016
        17
    ice2016  
       2021-01-06 09:23:00 +08:00
    支持 csv,xls,xlsx 的导入导出~~
    Yano
        18
    Yano  
       2021-01-06 09:27:49 +08:00
    有 IDEA-Datagrip 好用吗?
    mlhadoop
        19
    mlhadoop  
       2021-01-06 09:29:46 +08:00
    bs 版全称是啥?
    javahuang
        20
    javahuang  
    OP
       2021-01-06 09:30:21 +08:00
    @967182 嗯,datagrip 非常好用,我的目标也是尽可能实现 datagrip 更多的功能,但是 datagrip 太贵了,刚看首年 199$
    javahuang
        21
    javahuang  
    OP
       2021-01-06 09:32:14 +08:00
    @Yano 目前没有 IDEA-Datagrip 好用,当然以后也可能不会比他好用...我尽力做到更好
    levelworm
        22
    levelworm  
       2021-01-06 10:07:17 +08:00 via Android
    我觉得如果插件开发比较容易的话也是一个特色。
    securityCoding
        23
    securityCoding  
       2021-01-06 10:10:00 +08:00
    233 Datagrip 用户比较多
    dynastysea
        24
    dynastysea  
       2021-01-06 10:54:04 +08:00
    不关心数据库,只关心陪娃怎么把时间腾出来的?有娃在感觉不可能让写代码的
    javahuang
        25
    javahuang  
    OP
       2021-01-06 12:52:08 +08:00
    @dynastysea 哈哈,娃两岁多,我一般陪到晚上十点半,剩下的就是自由活动时间
    carity
        26
    carity  
       2021-01-06 12:57:16 +08:00
    最好能适配移动端
    dynastysea
        27
    dynastysea  
       2021-01-06 13:45:47 +08:00
    @javahuang 佩服佩服,大半夜熬夜写代码
    PopRain
        28
    PopRain  
       2021-01-06 14:02:55 +08:00
    dbeaver 可以参考参考,这种东东还是喜欢客户端程序
    GBdG6clg2Jy17ua5
        29
    GBdG6clg2Jy17ua5  
       2021-01-06 14:58:26 +08:00 via iPhone
    直接仿照一个 navicat
    ttys001
        30
    ttys001  
       2021-01-06 15:07:45 +08:00
    mac 盼望中……希望界面简洁些,图标不丑,支持暗色主题。不要订阅制!
    javahuang
        31
    javahuang  
    OP
       2021-01-06 16:07:20 +08:00
    @ttys001 可以收藏关注一下哈,目前没想着收费,后期可能会开源,有些地方我尽快完善一下,然后就出个 Alpha 版本。界面简洁、暗色主题这些应该都会满足。
    ibm360
        32
    ibm360  
       2021-01-06 18:43:14 +08:00
    关注,支持自定义视图
    ixinshang
        33
    ixinshang  
       2021-01-06 22:18:20 +08:00
    关注一下,V 友好多大佬开发了很多好用的工具。
    javahuang
        34
    javahuang  
    OP
       2021-01-06 23:08:04 +08:00
    @ibm360 自定义视图直接通过 ddl 语句就可以了哈,这个是最基本的
    yukong
        35
    yukong  
       2021-01-07 11:43:08 +08:00
    bs 版本 建议看看阿里的 dms
    javahuang
        36
    javahuang  
    OP
       2021-01-07 14:14:26 +08:00
    @yukong 谢谢,之前了解也使用过 dms,仅就数据库操作这块来看,感觉 dms 做的挺一般的,没啥参考价值...
    pkupyx
        37
    pkupyx  
       2021-01-07 18:04:58 +08:00
    有个 mysqlworkbench 没有的功能,navicat 有,很实用,就是数据库对比。最终上线前一定会跑 sql 脚本,跑完了要对比 test 和 prod 的数据库结构是否完全一致。
    javahuang
        38
    javahuang  
    OP
       2021-01-14 18:46:02 +08:00
    放了预览版了,欢迎大家提建议
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1349 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 34ms UTC 23:59 PVG 07:59 LAX 16:59 JFK 19:59
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86