有一字符串(一段SQL语句),怎样执行它,里面如有单引号怎么处理

pawly 2001-12-13 12:09:42
...全文
167 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
pawly 2001-12-13
  • 打赏
  • 举报
回复
把上面一段语句执行
pawly 2001-12-13
  • 打赏
  • 举报
回复
******是这样的*******
string ls_sql
ls_sql = "insert into table_1 (col_1,col_2) values('a','b','c');"
hongerchen 2001-12-13
  • 打赏
  • 举报
回复
"SELECT * FROM Table1 WHERE Field1 = '" + '' "'"
//字符串内容是:SELECT * FROM Table1 WHERE Field1 = ''
是不是这样,试一试吧!
王集鹄 2001-12-13
  • 打赏
  • 举报
回复
单引号中两个单引号等于一个
SELECT * FROM Table1 WHERE Field1 = ''''
// ~~~~“'”
xwmhn 2001-12-13
  • 打赏
  • 举报
回复
同意楼上leaf_cq的,也可以用:
SELECT * FROM Table1 WHERE Field1 = ''
ORDER BY Table1 ASC
leaf_cq 2001-12-13
  • 打赏
  • 举报
回复
ls_sql = "insert into a1_test (varchar) values('" + em_1.text + "');"
应该为:
ls_sql = "insert into a1_test (varchar) values('" + em_1.text + "')"
不要最后的分号
pawly 2001-12-13
  • 打赏
  • 举报
回复
up!!!
pawly 2001-12-13
  • 打赏
  • 举报
回复
我是这样写的:
string ls_sql
ls_sql = "insert into a1_test (varchar) values('" + em_1.text + "');"
messagebox("ls_sql",ls_sql)
EXECUTE IMMEDIATE :ls_sql USING sqlca;
messagebox(string(sqlca.sqlcode),sqlca.sqlerrtext)
if sqlca.sqlcode <> 0 then
rollback using sqlca;
else
commit using sqlca;
end if
可是提示缺少SQL语句
leaf_cq 2001-12-13
  • 打赏
  • 举报
回复
string ls_sql, ls_col1, ls_col2
ls_sql = "insert into table_1 (col_1,col_2) values('a','b' )" // 多了个参数:'c'
//或者(ls_col1 = 'a', ls_col2 = 'b' 于其他地方赋值)
//ls_sql = "insert into table_1 (col_1,col_2) values( '" + ls_col1 + "', '" + ls_col2 + "' )"
//或者
//ls_sql = "insert into table_1 (col_1,col_2) values( ~"" + ls_col1 + "~", ~"" + ls_col2 + "~" )"

EXECUTE IMMEDIATE :ls_sql USING My_trans;
if my_trans.sqlcode <> 0 then
rollback using my_trans;
else
commit using my_trans;
end if
pawly 2001-12-13
  • 打赏
  • 举报
回复
up!!!

1,075

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧