awingu 发表于 2010-4-15 16:50:16

关于符号和数据库命令之间的问题[已解决]

本帖最后由 awingu 于 2010-4-15 19:21 编辑

目前我遇到这么一个问题。我想将一个内容写入mssql数据库里面。
我使用的sql语句是大概这样的。
Insert Into Table(Name,Password,Contents) Values(,'admin','admin888','这里是一些说明内容。')

如果用上面这个直接执行的话,是没有问题的。
但是,如果我的“说明内容”里面存在各种半角符号的话,就会出错。
比如存在 ' 或者 , 或者 " 这些符号的话就出错了,打个比方说。

Insert Into Table(Name,Password,Contents) Values(,'admin','admin888','这里',是一些说明内容。')

这样的情况下,本来是写入数据 Name,Password,Contents三个项的内容,则变成 Values里面存在三个以上的内容了。

在autoit里面,我要怎么处理这个问题?
举例:

Dim $aa,$bb,$cc,$sql
$aa = "你好:'张某某','程某某',这里是你们的简单介绍."
$bb = "admin"
$cc = "admin888"

$sql = "Insert Into Table(Name,Password,Contents) Values(,'"&$bb&"','"&$cc&"','"&$aa&"')"

最后要求,保留原数据里面的各种符号能写到数据库里面去。

不知道我的问题表达得怎么样,希望能得到高人指点一二。


由于分类里面没有“已解决”所以只能在标题上面添加这个字样了。

awingu 发表于 2010-4-15 19:20:06

靠自己解决了,解决方法如下

Dim $aa,$bb,$cc,$sql
$aa = "你好:'张某某','程某某',这里是你们的简单介绍."
$bb = "admin"
$cc = "admin888"
$str = StringReplace$aa, "'", "''")
$sql = "Insert Into Table(Name,Password,Contents) Values(,'"&$bb&"','"&$cc&"','"&$str&"')"


在数据库里面,只要把半角分号弄成两个,那么sql就会读取为一个半角符号而不会认为是命令符号了
页: [1]
查看完整版本: 关于符号和数据库命令之间的问题[已解决]