Как вставить фрейм данных в таблицу mysql в python? - PullRequest
1 голос
/ 24 апреля 2020

Я пытаюсь запустить сценарий python для вставки значений в таблицу mysql из кадра данных. Но проблема в том, что столбцы данных не совпадают с таблицей mysql. Мне нужна помощь для вставки данных.

Пример: MySql Температура таблицы:

create table temp ( Table_name varchar(255),
                    Data_set_name varchar(255),
                    Current_Count int,
                    Load_date varchar(255), 
                    Recon_Date varchar(255)
);

Кадр данных df:

Master Job Name|Current_Count|Start_time
GRP|32452|04-24-2020 02:14:22
PCYC_VOC_Data_load|24|04-23-2020 09:31:10
IM_XREF_BRIDGE_PROD|3039|04-24-2020 02:04:32

Ожидаемый результат в таблице MySql temp:

Table_name           Data_set_name    Current_Count   Load_date             Recon_Date
GRP                  Refined          32452           04-24-2020 02:14:22
PCYC_VOC_Data_load   Refined          24              04-23-2020 09:31:10
IM_XREF_BRIDGE_PROD  Refined          3039            04-24-2020 02:04:32

Пожалуйста, дайте мне знать, если вам требуется какая-либо информация.

1 Ответ

1 голос
/ 24 апреля 2020

df.to_sql(con=con, name='table_name_for_df', if_exists='replace', flavor='mysql')

соединение с MySQLdb

from pandas.io import sql
import MySQLdb

con = MySQLdb.connect() 

sql.write_frame(df, con=con, name='table_name_for_df', 
                if_exists='replace', flavor='mysql')

use Если таблица существует осторожно, как если бы вы сказали, что заменить ее будет: отбросьте ее, создайте заново, и вставить данные.

Вы можете попробовать: append: Если таблица существует, вставьте данные. Создать, если не существует.


Как только вы закончите с этим, у вас будет таблица SQL с данными df. Вы можете изменить / добавить столбцы / имена столбцов позже

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