R查询字符串中的反斜杠问题
Backslash problems in R query string
所以,“\”,在摧残我的灵魂。我正在处理 RMySQL
的查询,它需要一些奇怪的字符串转义,但我似乎无法找到正确的粘贴调用。
query <- 'CALL `storedprocX`(1, 30, "\'xyz-f43\', \'1002\'")'
到目前为止,我的尝试很接近,但我似乎无法在正确的位置得到反斜杠。
ids <- c("xyz-f43","1002")
x <- 1
y <- 30
paste0('CALL `storedprocX`(',x,',',y,paste0(" \'",ids,"\'",collapse = ","),')')
有人有这方面的经验吗?
我不熟悉 RMySQL 但 SQL 引擎不负责转义吗?
> esc.ids = paste(sprintf("\'%s\'", ids), collapse = ", ")
> esc.ids = paste0("\"", esc.ids, "\"", collapse = "")
> my.q = paste0("'CALL `storedprocX`(1, 30, ", esc.ids, ")'", collapse = "")
> cat(my.q)
'CALL `storedprocX`(1, 30, "\'xyz-f43\', \'1002\'")'
> nchar(my.q)
[1] 52
会不会 SQL 不会像这里的猫那样做?
所以,“\”,在摧残我的灵魂。我正在处理 RMySQL
的查询,它需要一些奇怪的字符串转义,但我似乎无法找到正确的粘贴调用。
query <- 'CALL `storedprocX`(1, 30, "\'xyz-f43\', \'1002\'")'
到目前为止,我的尝试很接近,但我似乎无法在正确的位置得到反斜杠。
ids <- c("xyz-f43","1002")
x <- 1
y <- 30
paste0('CALL `storedprocX`(',x,',',y,paste0(" \'",ids,"\'",collapse = ","),')')
有人有这方面的经验吗?
我不熟悉 RMySQL 但 SQL 引擎不负责转义吗?
> esc.ids = paste(sprintf("\'%s\'", ids), collapse = ", ")
> esc.ids = paste0("\"", esc.ids, "\"", collapse = "")
> my.q = paste0("'CALL `storedprocX`(1, 30, ", esc.ids, ")'", collapse = "")
> cat(my.q)
'CALL `storedprocX`(1, 30, "\'xyz-f43\', \'1002\'")'
> nchar(my.q)
[1] 52
会不会 SQL 不会像这里的猫那样做?