gpt4 book ai didi

python - 通过 Python 将输入加载到 MySQL 表失败,列长度错误

转载 作者:行者123 更新时间:2023-11-29 21:39:43 25 4
gpt4 key购买 nike

我正在尝试学习如何通过Python运行MySQL。这段代码的作用是只是打开数据库并尝试将数据加载到空表中就在其中。

import MySQLdb

connection = MySQLdb.Connect(host='localhost', user='xx', passwd='xx', db='xx')
cursor = connection.cursor()
query = "LOAD DATA INFILE '/APath/aFile' INTO TABLE xx FIELDS TERMINATED BY '\r\n'"
cursor.execute( query )
connection.commit()

失败并出现以下错误:

 File "test0.py", line 7, in <module>
cursor.execute( query )
File
"/Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.7-intel.egg/MySQLdb/cursors.py",
line 202, in execute
self.errorhandler(self, exc, value)
File
"/Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.7-intel.egg/MySQLdb/connections.py",
line 36, in defaulterrorhandler
raise errorclass, errorvalue
_mysql_exceptions.DataError: (1406, "Data too long for column 'xkey'
at row 1"

xkey 将是表中的第一列,因此失败立即地。我假设我的终止指令很糟糕,那么如何我是否看到它试图加载到该列中的内容,以便我可以修复它?如果我错了,我应该尝试什么?

最佳答案

抱歉:看来它确实不需要字段,而是由 '\r 终止的行

但是,我认为字段终止符是“\r”,所以我不明白为什么即使我添加了正确的行终止符,保留“FIELDS TERMINATED BY '\r”仍然会生成错误。如果我只保留 LINES 部分,它就可以工作。

关于python - 通过 Python 将输入加载到 MySQL 表失败,列长度错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34636268/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com