我正在创建一个包含引号和斜杠的默认值的表字段,例如:
;:'",./\?<`>
当我在没有指定该字段的情况下创建新记录时,它按预期工作 - 它获得与我可以使用SQL select所需的完全相同的值:
;:'",./\?<`>
但是当我直接从系统db.table.field information_schema.COLUMNS.COLUMN_DEFAULT
读取默认值时,我得到了转义值:
;:''",./\\?<`>'
注意,'
加倍''
而\
还有一个转义斜杠\\
。
所以我想知道,这个逃脱是如何被调用的,我怎样才能解开它并获得原始价值?这样的事情是否足够?
val = val.replace("''", "'").replace("\\\\", "\\");
作为问题的补充:我正在nodejs
写我的应用程序,所以如果有人碰巧知道一个可以帮助我解决问题的程序包,我会非常感激。