Как вставить и отправить данные из файла xlsm в sql? - PullRequest
0 голосов
/ 20 мая 2019

У меня есть книга xlsm, которая содержит таблицы и диаграммы на каждом листе, который я хочу импортировать и перенести мои данные xlsm на любой sql Я искал, как это сделать, я нашел лучший способ подтолкнуть данные с помощью Python и панд, но я до сих пор не понял, Так есть ли способ вставить все мои данные в SQL, чтобы легко работать и автоматизировать мои данные И если есть какое-то руководство для этого, пожалуйста, дайте мне знать, или как я могу это сделать

1 Ответ

1 голос
/ 20 мая 2019

Для этого вам необходимо установить требования:

  1. pip install mysqlclient
  2. pip install pandas
  3. Установить xampp для веб-сервера с базой данных MySQL
  4. Установите MS Excel, чтобы создать таблицу, которую вы хотите вставить в БД MySQL

Это моя база данных PHPMyAdmin и имя таблицы:

Рабочая книга My Excel xlsm:

После выполнения требований вы можете попробовать следующий код (нене забудьте поместить скрипт Python и файл xlsm в одну и ту же директорию):

import pandas as pd, os, MySQLdb

# Your directory
mydir = (os.getcwd()).replace('\\','/') + '/'

df=pd.read_excel(r''+ mydir +'Book1.xlsm')
print(df)

# Establish a MySQL connection
database = MySQLdb.connect (host="127.0.0.1", user = "root", passwd = "", db = "myDB")
print(database)
# Get the cursor, which is used to traverse the database, line by line
cursor = database.cursor()

# Create the INSERT INTO sql query
query = """INSERT INTO myTable (name, email) VALUES ( %s, %s)"""

for i in range(len(df)):
    name=df['name'][i]
    email=df['email'][i]

    # Assign values from each row
    values=(name, email)
    # Execute sql Query
    cursor.execute(query, values)

# Close the cursor
cursor.close()

# Commit the transaction
database.commit()

# Close the database connection
database.close()
print('Insert success!')

Вывод:

     name                email
0  alfafa  miftahf77@gmail.com
<_mysql.connection open to '127.0.0.1' at 000002A5CB0BCEA8>
Insert success!
>>> 

После выполнения скрипта Python myTable изменяется на:

Надеюсь, это поможет вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...