为什么此SQL INSERT使用循环在某些字符上中断?

用户名

我在脚本中使用循环将行插入到数据库中,但是当客户名称包含某些字符时,它将中断。

数据

'1' 'Some+Customer Limited' '[email protected]'

期待中

$a = '1'
$b = 'Some+Customer Limited'
$c = '[email protected]'

INSERT INTO t1 (c1, c2, c3, c4, c5, c6) VALUES ($a, 1, $c, $c, 0, 0);

错误

INSERT INTO t1 (c1, c2, c3, c4, c5, c6) VALUES ('1', 1, 'Some+Customer, Limited' '[email protected]', 0, 0)
                                                                                                                                 *
ERROR at line 1:
ORA-00917: missing comma

如上所示,脚本中没有缺少逗号,即VALUES ($a, 1, $c, $c, 0, 0);是因为客户名称中的空格还是客户名称中的空格+

体重

我认为问题是read空格分隔(实际上是$ IFS中包含的任何字符),而不关心引号。

所以代替:

$a = '1'
$b = 'Some+Customer Limited'
$c = '[email protected]'

你有 :

$a = "'1'"
$b = "'Some+Customer"
$c = "Limited' '[email protected]'"

据我所知,没有办法read在正则表达式上使用“引号引起注意”或拆分,您必须选择一个特殊字符来分隔CSV字段

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么不使用此原始sql中的参数?

来自分类Dev

为什么此代码不带中断标签永远循环?

来自分类Dev

为什么此SQL INSERT在没有引发和异常的情况下失败?

来自分类Dev

为什么此PL-SQL循环仅在与DDL语句分开执行时才起作用?

来自分类Dev

为什么此循环不循环?

来自分类Dev

为什么我的“安全括号”实际上阻止了此SQL的工作?

来自分类Dev

为什么此创建表SQL在MSSQL Server中有效但在MySQL上无效?

来自分类Dev

为什么我不能使用此动态SQL创建表?

来自分类Dev

为什么我不能使用此代码更新SQL Server表?

来自分类Dev

为什么我不能使用此动态SQL创建表?

来自分类Dev

为什么我不能使用此代码更新SQL Server表?

来自分类Dev

为什么此C代码进入循环?

来自分类Dev

为什么不执行此循环?

来自分类Dev

为什么此for循环不起作用?

来自分类Dev

为什么此代码无限循环?

来自分类Dev

为什么此for循环不正确?

来自分类Dev

为什么此迭代器无限循环?

来自分类Dev

为什么不执行此循环?

来自分类Dev

为什么此代码继续循环?

来自分类Dev

为什么此for循环不会停止

来自分类Dev

为什么此功能不断循环?

来自分类Dev

为什么此for循环会产生溢出?

来自分类Dev

为什么会显示此字符▯?

来自分类Dev

为什么此查询在空行上失败?

来自分类Dev

为什么此查询不使用索引?

来自分类Dev

为什么此代码使用多种引号

来自分类Dev

为什么此查询不使用索引?

来自分类Dev

当我尝试在SQL Server上执行此查询时,为什么在日期字段上收到此错误?

来自分类Dev

为什么此插入命令在SQLite上什么都不做?

Related 相关文章

热门标签

归档