谷歌代码美化-如何修复SQL转义字符

Google Code Prettify - How to fix SQL escape character

本文关键字:何修复 SQL 转义字符 代码 谷歌      更新时间:2023-09-26

我正在尝试解决以下问题,因为它在我的网站上非常烦人。https://code.google.com/p/google-code-prettify/issues/detail?id=341&感谢=341&ts=1398085413

并引用了以下漂亮代码的文件:https://code.google.com/p/google-code-prettify/source/browse/trunk/src/lang-sql.js?r=179

问题是

  1. 在SQL中创建一个以"''"结尾的字符串时,高亮显示会认为它是转义的,而这不是T-SQL语法
  2. 要复制,请使用此代码作为源代码:(安装了Google code Pretify)

    <pre class="prettyprint lang-sql">
     SELECT @BUPath = 'c:'backups'' + @DBName + '-B4 CHANGE.bak'
     SELECT @BUName = @DBName + '-B4 CHANGE'
    </pre>
    

我希望代码能够理解"c:''backups''"部分中引号前的斜杠不是转义符。。。

我预计这条线需要更改,但我不确定如何更改:

[PR['PR_STRING'],      /^(?:"(?:[^'"'']|''.)*"|'(?:[^'''']|''.)*')/, null,
      '"''']

拨弄问题:http://jsfiddle.net/JH5uj/5/

我认为https://github.com/google/code-prettify/blob/master/src/lang-sql.js必须是从反斜杠是转义符的其他语言复制的。

/^(?:"[^"]*"|'[^']*')/

据我所知,我确实做到了,但作为一个数据库管理员,我可能会错过一些东西。

(很抱歉迟到了,但我刚刚遇到了同样的问题,找到了这个线程。)