НАГРУЗКА ДАННЫХ ЛОКАЛЬНЫЙ ИНФИЛЬ с инкрементным полем

0

У меня есть несколько неструктурированных txt файлов в каталоге, и я хочу вставить их в mysql; в основном, все содержимое каждого текстового файла должно быть помещено в строку. В MySQL у меня есть 2 столбца: ID (auto increment) и LastName (nvarchar (45)). Я использовал Python для подключения к MySql; используйте LOAD DATA LOCAL INFILE, чтобы вставить весь контент. Но когда я запускаю код, я вижу следующие сообщения в консоли Python: Изображение 174551. Кроме того, когда я проверяю MySql, я вижу только пустую пустую строку с автоматически генерируемыми идентификаторами. Изображение 174551 Вот код:

import MySQLdb
import sys
import os
result = os.listdir("C:\\Users\\msalimi\\Google Drive\\s\\Discharge_Summary")
for x in result:
     db = MySQLdb.connect("localhost", "root", "Pass", "myblog")
     cursor = db.cursor()
     file1 = os.path.join(r'C:\\Discharge_Summary\\'+x)     
     cursor.execute("LOAD DATA LOCAL INFILE '%s' INTO TABLE clamp_test" %(file1,));         
     db.commit()
db.close()

Может кто-нибудь, пожалуйста, скажите мне, что не так с кодом? Каков правильный путь для достижения моей цели?

  • 0
    Он пытается проанализировать столбец идентификатора из ваших данных ... Прочитать ошибку Incorrect Integer
  • 0
    Почему вы не можете просто разобрать файл самостоятельно в Python?
Показать ещё 2 комментария
Теги:
python-3.x

1 ответ

0

Я редактировал свой код с помощью:

.....cursor.execute("LOAD DATA LOCAL INFILE '%s' INTO TABLE clamp_test LINES TERMINATED BY '\r' (Lastname) SET id = NULL" %(file1,)) 

и это сработало :)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню