python:元组在mysql插入查询中转换为列表
我试图使用python将一个元组插入mysql表,但元组被转换为mysql表中的列表python:元组在mysql插入查询中转换为列表,python,mysql,Python,Mysql,我试图使用python将一个元组插入mysql表,但元组被转换为mysql表中的列表 settings: { 'AEROSPIKE_CONN_SETTINGS' : { 'hosts': [ ('aerospike.qgraph-vpc.io', 3000) ], 'policies': { 'timeout': 3000 } } } db = MySQLdb.connect(host='loc
settings: {
'AEROSPIKE_CONN_SETTINGS' : {
'hosts': [ ('aerospike.qgraph-vpc.io', 3000) ],
'policies': {
'timeout': 3000
}
}
}
db = MySQLdb.connect(host='localhost', user='test', passwd='abcd', db='testdb')
cursor = db.cursor(MySQLdb.cursors.DictCursor)
insert_query = '''INSERT INTO test_table (`settings`) VALUES ('{}')'''.format(json.dumps(settings))
cursor.execute(insert_query)
cursor.connection.commit()
执行上述代码后,将以以下格式插入数据
settings:{
"AEROSPIKE_CONN_SETTINGS": {
"hosts": [["127.0.0.1", 3000]]
}
}
settings:{
"AEROSPIKE_CONN_SETTINGS": {
"hosts": [("127.0.0.1", 3000)]
}
}
应采用以下格式
settings:{
"AEROSPIKE_CONN_SETTINGS": {
"hosts": [["127.0.0.1", 3000]]
}
}
settings:{
"AEROSPIKE_CONN_SETTINGS": {
"hosts": [("127.0.0.1", 3000)]
}
}
有什么问题或如何以预期格式插入。我正在其他python组件中读取mysql表中的设置,以连接到aerospike。JSON中没有元组
但是请注意,从Python代码的角度来看,列表和元组之间没有实际的区别。可以让它被转换。JSON中没有元组这样的东西
但是请注意,从Python代码的角度来看,列表和元组之间没有实际的区别。可以将其转换。请查看此问题和答案:此问题与Aerospike无关。您正在存储Aerospike配置的事实只是间接的。我建议去掉标签。如果Aerospike的python客户端拒绝使用列表而不是元组进行连接,则单独提出该问题。请查看此问题和答案:此问题与Aerospike无关。您正在存储Aerospike配置的事实只是间接的。我建议去掉标签。如果Aerospike的python客户端拒绝使用列表而不是元组进行连接,那么单独问这个问题。是的,这确实有区别,而连接Aerospike时元组是请求。在从mysql读取后,我刚刚在python代码中将列表转换回元组。是的,这确实会有所不同,而连接到aerospike则需要一个元组。在从mysql中读取后,我刚刚在python代码中将列表转换回元组。