如何在python

时间:2017-07-28 11:57:45

标签: python mysql

注意:下面的查询没有给出任何输出,所以当我打印查询时,我知道有一个空格,如下所示在output.can任何一个解决这个或给出任何解决方案?

node="some text"

sql=("select * from table where Node='%s.sam'"%node)

print("select * from table where Node='%s.sam'"%node)

cursor.execute(sql)
 data=cursor.fetchall()

 for dat in data:

     print(dat)

输出:

select * from table where Node='some text

.sam'

1 个答案:

答案 0 :(得分:1)

正如其他用户已经提到的,您可以使用strip()函数删除前导和尾随空格。如果您只想删除尾部空格,可以使用rspace()函数。

也是一个小问题,与您的问题无关,但与您的示例代码有关。通常,使用格式字符串为SQL查询输入参数是不好的做法,因为如果允许用户输入,它允许进行令人讨厌的SQL注入。您的驱动程序可能应该以安全的方式输入参数。

例如,使用sqlite3驱动程序,我相信您可以执行类似于以下内容的操作

cursor.execute("select * from table where Node = ?", (node,))