字段内容包含特殊字符 如何原样输出到文本中
时间:2011-07-05
来源:互联网
本帖最后由 showmetwo 于 2011-07-05 10:53 编辑
在取数据库中某字段值时, 发现其值为:C/$#*! My Dad Says Season 1/TV Series,其中包含$#这样的特殊字符
如果我使用sqlScript="insert into table values('$abc')", 那么其结果为C/0*! My Dad Says Season 1/TV Series
请问 如何原样把字段的值输入到文本中? 因为字段的值还有可能有其他特殊符号,我不想一一处理,有没有其他办法能够原样输出呢?谢谢~ :em14:
问题补充:
谢谢大家 不过我没有表达清楚 请看我的代码:
#从数据库导出字段到文件后
cat $file|while read line
do
#因为是KSH 所以数组只能这样设定 字段里包含空格 所以在前后及字段间分隔符上 都加上双引号分组 恐怕在赋值的时候 特殊字符已经被转换了
eval set -A infor $(echo $line | sed 's/^/"/;s/$/"/;s/\^/" "/g')
sqlScript="insert into table values('${infor[0]}','${infor[1]}')"
echo sqlScript>>$fileName
done
已解决
谢谢大家了 我已经自己解决了 3Q
把
eval set -A infor $(echo $line | sed 's/^/"/;s/$/"/;s/\^/" "/g')
变为
eval set -A infor $(echo '$line' | sed "s/^/\"'/;s/$/'\"/;s/\^/'\" \"'/g")
在取数据库中某字段值时, 发现其值为:C/$#*! My Dad Says Season 1/TV Series,其中包含$#这样的特殊字符
如果我使用sqlScript="insert into table values('$abc')", 那么其结果为C/0*! My Dad Says Season 1/TV Series
请问 如何原样把字段的值输入到文本中? 因为字段的值还有可能有其他特殊符号,我不想一一处理,有没有其他办法能够原样输出呢?谢谢~ :em14:
问题补充:
谢谢大家 不过我没有表达清楚 请看我的代码:
#从数据库导出字段到文件后
cat $file|while read line
do
#因为是KSH 所以数组只能这样设定 字段里包含空格 所以在前后及字段间分隔符上 都加上双引号分组 恐怕在赋值的时候 特殊字符已经被转换了
eval set -A infor $(echo $line | sed 's/^/"/;s/$/"/;s/\^/" "/g')
sqlScript="insert into table values('${infor[0]}','${infor[1]}')"
echo sqlScript>>$fileName
done
已解决
谢谢大家了 我已经自己解决了 3Q
把
eval set -A infor $(echo $line | sed 's/^/"/;s/$/"/;s/\^/" "/g')
变为
eval set -A infor $(echo '$line' | sed "s/^/\"'/;s/$/'\"/;s/\^/'\" \"'/g")
作者: showmetwo 发布时间: 2011-07-05
本帖最后由 rdcwayx 于 2011-07-05 10:28 编辑
楼下的方法不错,我这个就清了
楼下的方法不错,我这个就清了
作者: rdcwayx 发布时间: 2011-07-05
回复 showmetwo
复制代码
- abc='C/$#*! My Dad Says Season 1/TV Series'
-
- echo $abc
- C/$#*! My Dad Says Season 1/TV Series
-
- abc="C/$#*! My Dad Says Season 1/TV Series"
-
- echo $abc
- C/0*! My Dad Says Season 1/TV Series
作者: yinyuemi 发布时间: 2011-07-05
回复 showmetwo
abc='C/$#*! My Dad Says Season 1/TV Series';echo "insert into table values ('${abc}');"
abc='C/$#*! My Dad Says Season 1/TV Series';echo "insert into table values ('${abc}');"
作者: ltomuno 发布时间: 2011-07-05
谢谢大家 不过我没有表达清楚 请看我的代码:
#从数据库导出字段到文件后
cat $file|while read line
do
#因为是KSH 所以数组只能这样设定 字段里包含空格 所以在前后及字段间分隔符上 都加上双引号分组 恐怕在赋值的时候 特殊字符已经被转换了
eval set -A infor $(echo $line | sed 's/^/"/;s/$/"/;s/\^/" "/g')
sqlScript="insert into table values('${infor[0]}','${infor[1]}')"
echo sqlScript>>$fileName
done
#从数据库导出字段到文件后
cat $file|while read line
do
#因为是KSH 所以数组只能这样设定 字段里包含空格 所以在前后及字段间分隔符上 都加上双引号分组 恐怕在赋值的时候 特殊字符已经被转换了
eval set -A infor $(echo $line | sed 's/^/"/;s/$/"/;s/\^/" "/g')
sqlScript="insert into table values('${infor[0]}','${infor[1]}')"
echo sqlScript>>$fileName
done
作者: showmetwo 发布时间: 2011-07-05
谢谢大家了 我已经自己解决了 3Q
把
eval set -A infor $(echo $line | sed 's/^/"/;s/$/"/;s/\^/" "/g')
变为
eval set -A infor $(echo '$line' | sed "s/^/\"'/;s/$/'\"/;s/\^/'\" \"'/g")
把
eval set -A infor $(echo $line | sed 's/^/"/;s/$/"/;s/\^/" "/g')
变为
eval set -A infor $(echo '$line' | sed "s/^/\"'/;s/$/'\"/;s/\^/'\" \"'/g")
作者: showmetwo 发布时间: 2011-07-05
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28