【发布时间】:2012-01-11 00:35:07
【问题描述】:
我对数据库、执行 SQL 查询等相对较新。目前我专门将 MS SQL Server 用于我的数据库(这是我们在工作中使用的),但希望我的问题的答案可以比只针对那个特定的数据库。
我使用 DB 接口应用程序本身(在本例中为 SQL Server Management Studio)完成了大部分工作,但我也通过 python 脚本完成了一些工作,其中一些作为 cron 作业运行,其中一些是网站,以便用户可以向数据库提交查询。
我一直在使用 pymssql 模块从 python 查询和写入数据库。但是我遇到了一些恼人的问题。 (似乎pymssql不能使用临时表,而且我在“自动提交”方面也遇到了麻烦,但这可能是我自己的错。)
所以我对这方面的大部分内容一无所知,我只是想知道我应该往哪个方向发展。据我所知,我可以:
- 使用 pymssql,它直接与 MS SQL 服务器对话
- 使用 pyodbc,这需要先安装 FreeTDS 和 unixODBC,并进行设置
- 使用adodbapi模块,我不确定这里需要什么要求。
- 另一种方法??
问题是,我不完全了解 ODBC 的作用。这似乎是某种“身份验证中介”,有点像中间人,以确保用户是他/她所说的人。而且我对ADO的了解就更少了。
虽然 pymssql 似乎是最简单的方法,但它似乎也是人们不太重视的方法,并且最终会被弃用。我宁愿学习“正确”的方法,因为我刚刚开始接触这些东西。
因此,我正在寻找一些关于让 python 与 MS SQL Server 对话以及与一般 DB 对话的最佳方式的知识渊博的意见。我会将“最佳”定义为最适合会用它做适度复杂事情的人。 (虽然我才刚刚开始,但我最终将不得不加大力度。)
谢谢! 迈克
【问题讨论】:
标签: python sql-server