我一直在尝试使用MySQL模块在python中创建数据库。这是代码:
import MySQLdb
conn = MySQLdb.connect(host = '127.0.0.1', user='root', passwd='', db='test', port='3306')
cursor = conn.cursor()
cursor.execute("SELECT VERSION()")
row = cursor.fetchone()
print "server version:",row[0]
cursor.close()
conn.close()
我在与主机名相关的初始步骤中出错,我从localhost更改为本地IP,并添加了一个似乎只与引号一起使用的port关键字。除此之外,我遇到以下错误:
Traceback (most recent call last):
File "C:\Python27\server_version", line 4, in <module>
conn = MySQLdb.connect(host = '127.0.0.1', user='root', passwd='', db='bhavin', port='3306')
File "C:\Python27\lib\site-packages\MySQLdb\__init__.py", line 81, in Connect
return Connection(*args, **kwargs)
File "C:\Python27\lib\site-packages\MySQLdb\connections.py", line 187, in __init__
super(Connection, self).__init__(*args, **kwargs2)
TypeError: an integer is required
答案 0 :(得分:1)
port
应该是整数,而不是字符串:
conn = MySQLdb.connect(host='127.0.0.1',
user='root',
passwd='',
db='test',
port=3306)
但请注意,如果未明确提供3306
,则使用{{1}}:
端口
MySQL服务器的TCP端口。默认值:标准端口(3306)。
答案 1 :(得分:0)
如果您没有使用该代码创建数据库表,您将收到错误,例如“不存在此类表”或类似的内容。您应该尝试:CREATE TABLE IF NOT NOT EXISTS(“//表的列的类型为整数或varchar