
这是我用 node 写的 MySQL 语句,其中 blog_text 是 markdown 语句,语句包含双引号时我按照其他人说的进行了转义,但是还是一直报错,而且转义好像没有生效。
let _sql = `INSERT INTO blog_info (user_id, blog_title, blog_text, blog_sort, blog_tag, is_public, blog_status, blog_type, publish_time) VALUES (${values.userId}, "${values.blogTitle}", "${values.blogText.replace(/"/g,"\"").replace(/`/g,"\`")}", "${values.blogSort}", "${values.blogTag}", ${values.isPublic}, "${values.blogStatus}", "${values.blogType}", ${values.publishTime ? values.publishTime : null});`; 这是最后生成的实际语句,markdown 中的双引号和数据最外面的双引号配对了,就造成错误了,想问一下大家这种情况要怎么处理
INSERT INTO blog_info (user_id, blog_title, blog_text, blog_sort, blog_tag, is_public, blog_status, blog_type, publish_time) VALUES (100000000000000, "测试发布", "# Markdown 语法帮助文档***# 一、标题### 用法:> 使用"#"加上标题,"#"与标题之间留有空格### 例子:``` markdown# 一级标题## 二级标题### 三级标题#### 四级标题##### 五级标题###### 六级标题```### 效果:# 一级标题## 二级标题### 三级标题#### 四级标题##### 五级标题###### 六级标题***# 二、分割线### 用法:> 一行中使用三个或三个以上的"*"或"-"或"_"### 例子:``` markdown***---___```### 效果:***---___***# 三、斜体文本### 用法:> 文本两端加上"*"### 例子:``` markdown*斜体*```### 效果:*斜体****# 四、文本加粗### 用法:> 文本两端加上"**"### 例子:``` markdown**粗体**```### 效果:**粗体*****# 五、斜体文本加粗### 用法:> 文本两端加上"***"### 例子:``` markdown***斜体文本加粗***```### 效果:***斜体文本加粗******# 六、文本添加删除线### 用法:> 文本两端加上"~~"### 例子:``` markdown~~文本添加删除线~~```### 效果:~~文本添加删除线~~***# 七、文本添加下划线### 用法:> 通过 HTML 的`<u>`标签实现### 例子:``` markdown<u>文本添加下划线</u>```### 效果:<u>文本添加下划线</u>***# 八、标注### 用法:> 格式: 文本两端加上"=="### 例子:``` markdown==要注明的文本==```### 效果:==要注明的文本==***# 九、无序列表### 用法:> 格式: 无序列表使用"*"或"+"或"-"作为列表标记,符号和文字之间留有空格### 例子:``` markdown* 星号- 减号+ 加号```### 效果:* 星号- 减号+ 加号***# 十、有序列表### 用法:> 格式: 有序列表使用数字加上"."来标记,符号和文字之间留有空格,前面的数字跟序号无关。### 例子:``` markdown1. 第一项2. 第二项2. 第三项```### 效果:1. 第一项2. 第二项2. 第三项***# 十一、任务列表### 用法:> 格式: "-" + 空格 + "[ ]" + 空格 + 文字 表示未做任务,其中"[ ]"中间有空格;"-" + 空格 + "[X]" + 空格 + 文字 表示已做任务### 例子:``` markdown- [x] 已做任务- [ ] 未做任务- [ ] 未做任务```### 效果:- [x] 已做任务- [ ] 未做任务- [ ] 未做任务***# 十二、区块### 用法:> 格式: 段落开头使用">",后面紧跟一个空格### 例子:``` markdown> 这是一个区块```### 效果:> 这是一个区块***# 十三、代码块### 用法:> 使用"```"包裹一段代码,并指定一种代码语言(也可以不指定)### 例子:``` markdown请直接查看左侧写法```### 效果:``` jsconst a = 1;const b = 2;const c = a + b;```***# 十四、链接### 用法:> ` [链接名称](链接地址) `### 例子:``` markdown[百度](www.baidu.com)```### 效果:[百度](www.baidu.com)***# 十五、图片的展示### 用法:> `  `### 例子:``` markdown```### 效果:***# 十六、表格### 用法:> 使用'|'来分割表单,'-'来分割表头和表单, 符号与数据之间留有空格。其中':-:'表示文本居中,':-'表示文本左对齐,'-:'表示文本右对齐。### 例子:``` markdown| 表头 | 表头 | 表头 || :------- | :------: | ---------: || 文本左对齐 | 文本居中 | 文本右对齐 || 文本左对齐 | 文本居中 | 文本右对齐 || 文本左对齐 | 文本居中 | 文本右对齐 |```### 效果:| 表头 | 表头 | 表头 || :------- | :------: | ---------: || 文本左对齐 | 文本居中 | 文本右对齐 || 文本左对齐 | 文本居中 | 文本右对齐 || 文本左对齐 | 文本居中 | 文本右对齐 | ***# 十七、emoji### 用法:> 直接使用即可### 例子:### 效果:", "1000000013", "1000000002,1000000007,1000000011", false, "BlogPublished", "MARKDOWN", null);