重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
没错, 只能对 value 使用占位符. 在execute() 函数里, value 永远不会被放回到 sql query string 中, 而是被存到别的地方, 需要的时候用.
创新互联建站10年专注成都高端网站建设按需设计网站服务,为客户提供专业的成都网站制作,成都网页设计,成都网站设计服务;创新互联建站服务内容包含成都网站建设,微信小程序开发,软件开发,网络营销推广,网络运营服务及企业形象设计;创新互联建站拥有众多专业的高端网站制作开发团队,资深的高端网页设计团队及经验丰富的架构师高端网站策划团队;我们始终坚持从客户的角度出发,为客户量身订造网络营销方案,解决网络营销疑问。
要想用动态选择 table/column name, 只能采用python 自带的 format() 函数.
为了安全起见, 请勿让用户输入 column name. 实在需要的话请小心地 sanitize. 严防 sql 注入攻击.
1. 使用连接符: +
12
world = "World"print "Hello " + world + " ! "
2. 使用占位符来内插
world = "World"print "Hello %s !" % world
3. 使用函数
li = ['my','name','is','bob']mystr = ' '.join(li)print mystr
上面的语句中字符串是作为参数传入的,可以直接用变量替换:
begin_date = '2012-04-06 00:00:00'end_date = '2012-04-06 23:59:59'select * from usb where time between to_date(begin_date,'YYYY-MM-DD HH24:MI:SS') and to_date(end_date,'YYYY-MM-DD HH24:MI:SS')
主要是"{}{}{}".format(i,j,k)这部分不明白吧?
笼统的说这东西叫做字符串的格式化,用大白话来说就是:
字符串中有一些可以被替换掉的占位符,而格式化的过程就是对这些占位符替换的过程,举例来说:
“I am a {}”.format("student")
它表示将字符串"I am a {}"进行格式化,格式化的结果就是该字符串中的占位符{}被format()函数中的参数替换,就本例来说就是用"student"替换掉{},最终得到:
"I am a student"
*.如果字符串中有多个占位符,且占位符中没有数字,则替换的时候使用format()中的变量从左到右依次对占位符{}进行替换,如:
a = "how"
b = "are"
c = "you"
"{} {} {}".format(a,b,c)执行后的结果就是:
"how are you"
*.如果字符串中有多个占位符,且占位符中标有数字,则替换的时候占位符要用format()中相应位置的变量进行替换,如
a = "how"
b = "are"
c = "you"
“{2} {0} {1}".foramt(a,b,c)执行后的结果是:
"you how are"
希望能帮助你,欢迎追问