azure Python文件中的SQL查询显示为“COLUMNS”而不是“VALUES”

vatpfxk5  于 2023-03-31  发布在  Python
关注(0)|答案(1)|浏览(63)

我是非常新的,在这方面,我尽我所能,但我只是不知道我在哪里f...... ing了=(
我在我的python文件中做了一个SQL查询。我想写入我的Azure数据库表--〉make a new row,查询如下:

SQLQuery ="""
                INSERT INTO [dbo].[Input_Table_Test] 
                VALUES ("""+(respons['symbol'])+""",1,1,1,1,1,1,1,1,1,1,1,1,1,1,1);"""

“respons ['symbol']”是一个动态JSON元素,我试图将键上传到查询中(在本例中是'SMG')-不要担心所有的1,这只是因为它适合表。
当我从我的python文件中运行查询时,我得到了这个错误消息:('42 S22',“[42 S22] [Microsoft][ODBC Driver 18 for SQL Server][SQL Server]列名'SMG'无效。”)
但我不想写的列,我试图使行/值。
我试着编辑查询,看看是否有其他错误,但没有。如果你用1替换“(respons ['symbol'])”,它就可以完美地工作了。我不知道从这里去哪里...

e0bqpujr

e0bqpujr1#

1是一个整数,不需要加引号。
但是SMG(大概)是一个字符串,因此需要像'SMG'这样的引号。
但是因为你没有引用它,它被解释为表中其他列的名字,当然你没有一个这样命名的列,所以你得到了错误。
SMG周围加上引号。

相关问题