Python 属性错误:';模块';对象没有属性';连接';
我知道,如果我将文件命名为与导入lib相同的文件,可能会出现此类错误,但肯定有不同之处,因为即使尝试通过控制台运行下面的代码,错误仍然存在:Python 属性错误:';模块';对象没有属性';连接';,python,python-2.7,python-import,anaconda,pymssql,Python,Python 2.7,Python Import,Anaconda,Pymssql,我知道,如果我将文件命名为与导入lib相同的文件,可能会出现此类错误,但肯定有不同之处,因为即使尝试通过控制台运行下面的代码,错误仍然存在: # -*- coding: cp1251 import _mssql connSQLserver = _mssql.connect( server="localhost", port=1433, user="ad
# -*- coding: cp1251
import _mssql
connSQLserver = _mssql.connect(
server="localhost",
port=1433,
user="admin",
password="****",
database="master")
这是输出:
AttributeError Traceback (most recent call last)
<ipython-input-18-8ecbd448023e> in <module>()
2 import _mssql
3
----> 4 connSQLserver = _mssql.connect(
5 server="localhost",
6 port=1433,
AttributeError: 'module' object has no attribute 'connect'
返回
print\u mssql.\uu file\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu;前导下划线应该为您提供了这是一个私有实用程序模块的线索。只需导入pymssql
尝试\u mssql.MSSQLConnection
当您以root用户身份安装python模块时,有时除了root用户之外,其他用户对模块文件的访问权限是有限的
只需将recurse权限作为根赋予每个人:
以Python2.7模块为例,通过pip2.7安装
chmod-ra+rx/usr/local/lib/python2.7
您可以通过strace启动程序来检查这是一个权限问题…问题只是.connect(…)
必须像一样大写。connect(…)
不幸的是,这不是文档中编写的解决方案,该类将在建立连接后创建,换句话说,必须调用connect()
。@Rocketq我在[2]中尝试过:_mssql.connect Out[2]:您的MS SQL数据库可能有问题?_mssql.connect
返回相同的错误。如果这只是python找不到函数,那么sql server可能是个什么问题?请运行代码并提供完整的错误消息。运行import\u mssql;打印_mssql
?好的,这很有趣,我以前从未见过内置的模块。我得到
,你的代码对我有用。您使用的是哪个版本的Python?你使用的是像Anaconda或Enthow Canopy这样的发行版吗?我明白了,你的意思是,他试图使用Anaconda的_mssql或pymssql,而不是我刚刚安装的库。“我说得对吗,@LukeWoodward?我必须承认我对水蟒并不熟悉,所以我不知道它是否包含\u mssql
”。政府建议不要这样做。然而,在我看来你是对的:在Anaconda的某个地方有一个\u mssql
模块的副本,Python正在获取它,而不是pymssql库中的一个。
# -*- coding: cp1251
import _mssql
print _mssql
<module '_mssql' (built-in)>