Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/62.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 将行从数据库插入到另一个数据库_Python_Mysql_Pymysql - Fatal编程技术网

Python 将行从数据库插入到另一个数据库

Python 将行从数据库插入到另一个数据库,python,mysql,pymysql,Python,Mysql,Pymysql,我正在尝试使用pymysql将一行从一个数据库服务器插入到另一个不同环境中的数据库服务器 prod_conn = pymysql.connect( prod_common_db_endpoint, prod_user, prod_password, prod_common_table_name) prod_cursor = prod_conn.cursor() prod_ConnectFirm_table = prod_cur

我正在尝试使用pymysql将一行从一个数据库服务器插入到另一个不同环境中的数据库服务器

prod_conn = pymysql.connect(
        prod_common_db_endpoint,
        prod_user,
        prod_password,
        prod_common_table_name)

prod_cursor = prod_conn.cursor()


prod_ConnectFirm_table = prod_cursor.execute("select * from Common.ConnectFirm where FirmId = " + prod_source_firm + ";")
for row in prod_ConnectFirm_table:
    ConnectFirmId = int(row[1])
    ConnectFirmName = (row[2])
    FirmId = int(row[3])
    isDeleted = (row[4])
    tags = (row[5])
    createdDate = (row[6])
    createdBy = int(row[7])
    editedDate = (row[8])
    editedBy = int(row[9])


conn = pymysql.connect(target_common_db_endpoint, user, password, common_schema_name)

cursor = conn.cursor()

cursor.execute("INSERT INTO Common.ConnectFirm(ConnectFirmId, ConnectFirmName, editedDate) VALUES(" + ConnectFirmId + ", " + ConnectFirmName + ", " + editedDate + ", ")")
conn.commit()
print("error inserting")
它没有告诉我这个错误

Traceback (most recent call last):
  File "sql_test_3_d.py", line 109, in <module>
    for row in prod_orionConnectFirm_table:
TypeError: 'int' object is not iterable
回溯(最近一次呼叫最后一次):
文件“sql_test_3_d.py”,第109行,在
对于产品或连接公司表中的行:
TypeError:“int”对象不可编辑

prod\u ConnectFirm\u表将包含执行状态,该状态是一个无法覆盖的整数值。因此,执行查询后,如下所示:

prod_ConnectFirm_table = prod_cursor.execute("select * from Common.ConnectFirm where FirmId = " + prod_source_firm + ";")
您需要从游标获取数据:

data = prod_cursor.fetchall()

“数据”将以元组的形式包含查询结果,并对其进行解析。

为什么在循环的每个步骤中都要连接到db?你能改变缩进吗?不要把你的值转换成元组。它将在与其他字符串连接时引发错误objects@mad_我正在连接到两个数据库服务器,我正在尝试连接到这两个数据库服务器,以便从一个数据库中进行选择并插入到另一个数据库。我不确定我是不是用正确的方法做的!我相信这更多的是一个评论,而不是一个答案。@mad_u如果你能编辑我的答案或指出错误,那就最好了,我很乐意改进答案,并且在下次回答时可能会记住一些事情, Thanks@dilkash您的建议消除了TypeError的错误:“int”对象是不可编辑的,但这次我得到了一个不同的回溯(上次的最新调用):文件“sql_test_3_d.py”,第139行,在“+editedBy+”中)“”)TypeError:必须是str,而不是int@MinaGobrialsql_test_3_d.py中第139行的代码是什么?数据库中的这一行是int类型@迪尔卡什