Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Python将多个制表符分隔的文本文件插入MySQL?_Python_Mysql - Fatal编程技术网

使用Python将多个制表符分隔的文本文件插入MySQL?

使用Python将多个制表符分隔的文本文件插入MySQL?,python,mysql,Python,Mysql,我正在尝试创建一个程序,该程序接受许多选项卡分层的文本文件,并一次处理一个,将它们保存的数据输入MySQL数据库。有几个文本文件,如movies.txt,如下所示: 1 Avatar 3 Iron Man 3 Star Trek 和外观相同的actors.txt等。每个文本文件有上百个条目,每个条目都有一个id和相应的值,如上所示。我在这个网站和其他网站上找到了许多代码示例,但我还不知道如何在这种情况下实现它们 到目前为止,我的代码看起来像这样 import MySQLdb da

我正在尝试创建一个程序,该程序接受许多选项卡分层的文本文件,并一次处理一个,将它们保存的数据输入MySQL数据库。有几个文本文件,如movies.txt,如下所示:

1   Avatar
3   Iron Man
3   Star Trek
和外观相同的actors.txt等。每个文本文件有上百个条目,每个条目都有一个id和相应的值,如上所示。我在这个网站和其他网站上找到了许多代码示例,但我还不知道如何在这种情况下实现它们

到目前为止,我的代码看起来像这样

import MySQLdb

database_connection = MySQLdb.connect(host='localhost', user='root', passwd='')

cursor = database_connection.cursor()

cursor.execute('CREATE DATABASE library')

cursor.execute('USE library')

cursor.execute('''CREATE TABLE popularity (
                    PersonNumber INT,
                    Category VARCHAR(25),
                    Value VARCHAR(60),
                    )
                    ''')

def data_entry(categories):
每次我试图得到其他代码,我发现与此工作,我只是完全迷失。希望有人能帮助我,要么告诉我需要做什么,要么告诉我更多的信息

我一直试图适应我的情况的代码示例如下:

import MySQLdb, csv, sys
conn = MySQLdb.connect (host = "localhost",user = "usr", passwd = "pass",db = "databasename")
c = conn.cursor()
csv_data=csv.reader(file("a.txt"))
for row in csv_data:
print row
c.execute("INSERT INTO a (first, last) VALUES (%s, %s), row")
c.commit()
c.close()
以及:


MySQL可以使用
mysqlimport
实用程序直接读取TSV文件,或者执行
LOAD DATA infle
SQL命令。这比用python处理文件并插入文件要快,但您可能想学习如何同时完成这两项工作。祝你好运

尝试移动第二个示例中的“以便将行传递给execute call.c.execute”(“插入(第一个、最后一个)值(%s,%s)”,行)这个链接有几个执行示例。谢谢。好吧,这真的很有帮助。我学习Python比学习SQL更多,所以我想用Python来执行,即使它速度较慢。我现在拥有的是cursor.execute(“将数据本地填充'movies.txt'加载到以'\\t'行结尾,以'\\n'结尾的表流行字段中”)这是一种工作方式。我在中获取数据,但不删除类别VARCHAR(25)这是我真正需要的。我需要用文件名(如电影、电视等)填充类别,这样才能工作。我知道我需要做的事情一定很明显,但我无法完成。感谢您的帮助。将您的类别列放在最后:
将数据本地填充“movies.txt”加载到以“\\t”结尾的表流行字段中以“\\n
(人号、类别、值)SET Category='Movies'结尾的ES将为每行设置类别。