分享到:
发表于 2009-01-16 09:10:06 楼主 | |
我用shell写的,目的是把数据导入到数据中去,如下: mysql -uroot -p111111 -D db -e "insert into tbl_rules(rules) values('$RULES')"; 提示: ERROR 1064 (42000) at line 1: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '[|8B F3|3|C9 B1 87 8B FB 8A 13 83 C3 01 80 E2 0F C0 E2 04 8A 03 83 C3|"; classty' at line 1然后发现大量数据中含有单引号 ' ,这个该怎么注释呢?数据太多了,我做的是一个循环来读取,然后导入数据库,一条一条导太麻烦了,谢谢,回答我的新年发大财! |
|
楼主热贴 |
发表于 2009-01-16 09:10:06 9楼 | |
在数据里面转义了,但是还报一样的错,如下: content:"|EB|'[|8B F3|3|C9 B1 87 8B FB 8A 13 83 C3 01 80 E2 0F C0 E2 04 8A 03 83 C3|"; |
|
发表于 2009-01-16 09:10:06 8楼 | |
数据里面全转义比较麻烦,唉,没其他方法了吗 |
|
发表于 2009-01-16 09:10:06 7楼 | |
虽然SQL插入了 “”,但是数据库里是没有的“”的,这里只是做了转义 |
|
发表于 2009-01-16 09:10:06 6楼 | |
很多数据,有些数据里面含有单引号,如下 123123123'[|8B F3|3|C9 B1 87 8B FB 8A 13 83 C3 01 80 E2 0F C0 E2 04 8A 03 83 C3|123123'asdfadadf 如果批量来注释单引号的话,会对数据本身产生影响,我想这样原封不动的导入到数据库里面去,有办法吗?另附上shell cat b.txt|while read LINE do RULES=`echo $LINE` mysql -uroot -p111111 -D db -e "insert into tbl_rules(rules) values('$RULES')"; done |
|
发表于 2009-01-16 09:10:06 5楼 | |
数据是什么样的? 拿点sample出来看看呀 |
|
个性签名:
|
发表于 2009-01-16 09:10:06 4楼 | |
你是指在数据里面的单引号加上吗?数据太多了,如果这样加的话,会对数据本身有一点影响,有其他方法吗? |
|
发表于 2009-01-16 09:10:06 3楼 | |
需要把 $RULES 里的单引号 加 "",两边的单引号照样保留。 |
|
个性签名:
|
发表于 2009-01-16 09:10:06 2楼 | |
楼上的兄弟,我试了,不行 mysql -uroot -p111111 -D db -e "insert into tbl_rules(rules) values('$RULES')"; 提示如下: ERROR at line 1: Unknown command '''. |
|
发表于 2009-01-16 09:10:06 1楼 | |
在 单音号前加 "" |
|
针对ZOL星空(中国)您有任何使用问题和建议 您可以 联系星空(中国)管理员 、 查看帮助 或 给我提意见