SQLServer数据库写入操作时报错:not all arguments converted during string formatting 问题解决

    在使用SQLServer数据写入操作的时候需要有正确的sql语句才可以执行,今天在执行写入操作的时候报错:

    not all arguments converted during string formatting

    错误意思是说:在写入的时候不是所有的参数都完成了字符串格式转化

    可能直接理解不知道错误在哪里,其实查看自己的SQL语句就会明白了,如下:

    

insert_sql="INSERT INTO %s (id,flag,time,text,name,place) \
            VALUES ('%s','%s','%s','%s','%s')" % (table,one[0],one[1],one[2],one[3],one[4],one[5])

   上面的错误是由于“%s”格式化的数量与自己实际传入的参数数量不一致造成的,修改成如下语句即可:

insert_sql="INSERT INTO %s (id,flag,time,text,name,place) \
            VALUES ('%s','%s','%s','%s','%s','%s')" % (table,one[0],one[1],one[2],one[3],one[4],one[5])

     对上面的语句简单解释如下:

    id、flag、time、text、name和place是数据库中对应数据字段的字段名称

    “%s”是参数的格式化形式

    table,one[0],one[1],one[2],one[3],one[4],one[5]是自己实际传入的参数

    这三者需要在数量和格式上保持一致才行

猜你喜欢

转载自blog.csdn.net/Together_CZ/article/details/82713386