【问题标题】:Simplest way to create a tiny database app in linux在 linux 中创建小型数据库应用程序的最简单方法
【发布时间】:2009-01-26 04:30:03
【问题描述】:

我正在寻找一个非常小的编目应用程序供个人使用(尽管如果我认为其他人会使用它,我会开源它)。我不想要一个 Web 应用程序,因为为此拥有一个应用程序服务器似乎有点过头了——而且我喜欢它是独立的并将其粘贴在 USB 记忆棒上的想法。

我的标准:

  • 接口必须易于编程。如果这使得代码更容易,它可以是诅咒风格的。我在 ncurses 方面的经验会提出其他建议,但我实际上非常喜欢命令行 UI。
  • 语言并不重要。我的粗略偏好顺序(最高优先):
    • Python
    • C
    • C++
    • Java
    • 我会考虑任何对 linux 友好的东西
  • 我正在考虑使用 sqlite 进行存储,但欢迎提出其他(可嵌入的)建议。

过去有人做过这种事吗?有什么建议么?要避免的陷阱?

编辑:

好吧,看来 python+sqlite 是早期的赢家。这只是留下了哪个 ui 库的问题。我知道你可以在 python 中免费获得 tkinter - 但它太丑了(我宁愿有一个 curses 界面)。我在 C 中做了一些 GTK,但在 python 中看起来相当不自然。我对 wxwidgets 有过短暂的涉猎,但文档的 IIRC 非常糟糕(我认为他们在某些时候重命名了模块,这有点混乱)。

所以剩下的就是 pyqt4 或某种控制台库。或者也许是 GTK。想法?还是我在注销上述任何一项时过于仓促?

【问题讨论】:

    标签: database programming-languages rad


    【解决方案1】:

    我肯定会推荐(或者第二个,如果你已经在考虑的话)- 带有 sqlite3 的 python。它简单、便携且没有大的数据库驱动程序。我为自己的编目目的编写了一个类似的应用程序,它做得很好。

    【讨论】:

    • 你用什么做前端的?我发现很难在语言、db 和 ui 之间找到良好的 3 路匹配。
    • 我只是使用一个简单的命令行选项界面进行交互。我计划添加一个诅咒用户界面,但从未实现。我的 curses 编程技能不存在。
    【解决方案2】:

    我为 GUI 投票支持 pyqt 或 wx。 (其次是 Python+sqlite 投票回答原始问题。)

    【讨论】:

      【解决方案3】:

      我第二(或第三)pythonsqlite

      就建议而言:

      如果您的野心不大,我建议您构建一个非常简单的网络服务来将您的目录同步到服务器。我过去曾出于类似目的这样做过(很惭愧,几次)。

      使用 sqlite,备份实际上可以像上传或下载最新的数据库文件一样简单,具体取决于文件的时间戳。

      然后,如果您丢失或损坏了闪存驱动器(在我的情况下被打成碎片),您的目录不会丢失。您可以获得更多的便携性、至少 1 个备份以及一些安心。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-04-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-18
        • 1970-01-01
        • 1970-01-01
        • 2013-09-22
        相关资源
        最近更新 更多