diff --git a/ecs/dataimport/dataimport/main.py b/ecs/dataimport/dataimport/main.py index d86ee84e..eaf4b7af 100644 --- a/ecs/dataimport/dataimport/main.py +++ b/ecs/dataimport/dataimport/main.py @@ -129,6 +129,7 @@ def main(bucket_name, target_data_source, target_file_name, settings_key, db_inf process_count += 1 # SQL文生成 + sql_arg = [] sql = f'INSERT INTO {settings_list[SETTINGS_ITEM["loadSchemaName"]]} (' for i in range(len(settings_db_columu_list)): sql = f'{sql} {settings_db_columu_list[i]},' @@ -144,9 +145,8 @@ def main(bucket_name, target_data_source, target_file_name, settings_key, db_inf # データ項目値が0桁より大きいかチェックする if len(line[i]) > 0: # 0桁より大きい場合 - replace_line = line[i].replace('\\', '\\\\') - replace_line = line[i].replace('"', '\\"') - sql = f'{sql} "{replace_line}",' + sql_arg.append(line[i]) + sql = f'{sql} %s,' else: # 上記以外の場合 sql = f'{sql} NULL,' @@ -164,7 +164,7 @@ def main(bucket_name, target_data_source, target_file_name, settings_key, db_inf # ロードスキーマのトランザクション開始 with conn.cursor() as cur: - cur.execute(sql) + cur.execute(sql, sql_arg) conn.commit() normal_count += 1 except Exception as e: