在linux中创建一个小型数据库应用程序的最简单方法

时间:2009-01-26 04:30:04

标签: database programming-languages rad

我在找创建供个人使用非常小的编目应用程序(虽然我开源,如果我认为其他人会使用它)。我不想要一个web应用程序,因为它似乎有点小题大做,拥有应用程序服务器只为这 - 再加上我喜欢它是独立的,并坚持它在USB记忆棒的想法

我的Criterea:

  • 界面必须易于编程。它可以是curses样式,如果这样可以更容易编码。我对ncurses的经验会另有建议,但我实际上非常喜欢commanline UI。
  • 语言并不重要。我粗略的偏好顺序(最高的第一个):
    • 的Python
    • C
    • C ++
    • 爪哇
    • 我会考虑任何对Linux友好的内容
  • 我正在考虑使用sqlite进行存储,但欢迎使用其他(可嵌入)建议。

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

修改

好吧,看起来python + sqlite是早期的赢家。这就留下了哪个ui库的问题。我知道你在Python Tkinter的获得免费的 - 但它只是这么难看(我宁愿有一个诅咒接口)。我在C中做了一些GTK,但在python中它看起来相当不自然。我有一个非常简单的涉猎与wxWidgets的但文档漂亮的残暴IIRC(他们改名模块在某些时候我想,这一切都有点糊涂了)。

这样我就得到了pyqt4或某种控制台库。或者也许是GTK。思考?或者我是否过于草率地注销上述其中一项?

4 个答案:

答案 0 :(得分:5)

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

答案 1 :(得分:2)

我为GUI投票支持pyqt或wx。 (第二个Python + sqlite投票回答原始问题。)

答案 2 :(得分:1)

我是第二(或第三) python sqlite

就建议而言:

如果您感觉野心勃勃,我建议您构建一个非常简单的 Web服务,以便将您的目录同步到服务器。为了类似的目的,我在过去做过这个(羞耻地,几次)。

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

然后,如果您丢失或损坏您的闪存驱动器(在我的情况下粉碎成碎片),您的目录不会丢失。你获得了更多的可移植性,至少1次备份,并且可以放心。

答案 3 :(得分:-2)

您也可以使用Bash制作应用