在sqlserver2008中,转义符是单引号。
看下面的例子:
存到表中的格式如下:
RULE_ID TABLE_CODE RULE_TYPE RULE_EXPR RULE_DESC JOIN_EXPR MATCH_RULE_EXPR SEQ_NUM
1 tbl_customer unique MOBILE='#{MOBILE}' or PHONE='#{PHONE}' 相同客户ID已存在 NULL NULL 1
而sql语句的写法如下:
insert into DFL_DATA_VALIDATE_RULES(RULE_ID,TABLE_CODE,RULE_TYPE,RULE_EXPR,RULE_DESC,SEQ_NUM)
values(1,'tbl_customer','unique','MOBILE=''#{MOBILE}''','相同客户ID已存在',1)
通过观察发现,在MOBILE='#{MOBILE}'直接加2个单引号会报错的,此时必须将#前面的单引号和}后面的单引号进行转码。
参考链接1:http://blog.csdn.net/sptoor/article/details/11885623
参考链接2:http://www.cnblogs.com/zgqys1980/archive/2006/08/04/468018.html