什么是ODBC,如何在Linux中利用它?

1 投票
2 回答
651 浏览
提问于 2025-04-15 23:00

我正在用SQLite创建一个主数据库。这个数据库文件里有十几个表格。我希望我们小组里的每个人都能访问这个数据库(可以通过Python或者SQLite的命令行),所以我想把这个文件放在一个大家都能读取的目录里,命名为'master.db'。

这时,我想到了一个流行的词汇'ODBC'。

我记得以前在Windows系统的时候(真是感谢上天那段日子已经过去了),我可以把一个Excel表格“注册”到我的“数据源”里,这样在任何应用程序中都能看到它。

我能在Linux系统中利用这个功能吗?这样做有意义吗?

非常感谢。

2 个回答

0

首先,这里有一篇关于ODBC的维基百科文章。ODBC是一种标准的软件接口,用来和数据库进行交互。不过,我觉得如果你想把SQLite和Python一起用,可能不需要用到它。Python里有一个内置的模块叫做sqlite3,这个模块可以帮助你完成相关操作。祝你好运!

1

如果只有少量人访问你的数据库,那应该没问题。不过,SQLite在处理大量同时访问时表现得很糟糕——当我有很多人同时访问时,数据库总是被锁住,所以我从SQLite换成了MySQL。

对于很多人同时访问的情况,你需要一个中间层来处理这些请求,比如一个小型的网页服务器,或者一个可以处理所有请求的Python程序,这样可以控制对SQLite数据库的访问。可以使用像SQLAlchemy或SQLObject这样的ORM工具,它们可以安全地访问SQLite。

至于在Linux上使用ODBC让SQLite对Linux用户可用,虽然ODBC在Linux上确实可以用,并且有SQLite的ODBC驱动(http://www.ch-werner.de/sqliteodbc/),但我觉得你不能通过ODBC把SQLite“注册”到一个中央的数据源列表里——这完全是Windows的做法……

撰写回答