node 操作 MySQL 存入 markdown 文本单双引号问题 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
DecadentF

node 操作 MySQL 存入 markdown 文本单双引号问题

  •  
  •   DecadentF 2019 年 11 月 5 日 1675 次点击
    这是一个创建于 2362 天前的主题,其中的信息可能已经有所发展或是发生改变。

    这是我用 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![small.jpg]( https://i.loli.net/2019/09/30/fkPs9Sy34Th8gB6.jpg "图片描述")```### 效果:![small.jpg]( https://i.loli.net/2019/09/30/fkPs9Sy34Th8gB6.jpg 图片描述")***# 十六、表格### 用法:> 使用'|'来分割表单,'-'来分割表头和表单, 符号与数据之间留有空格。其中':-:'表示文本居中,':-'表示文本左对齐,'-:'表示文本右对齐。### 例子:``` markdown| 表头 | 表头 | 表头 || :------- | :------: | ---------: || 文本左对齐 | 文本居中 | 文本右对齐 || 文本左对齐 | 文本居中 | 文本右对齐 || 文本左对齐 | 文本居中 | 文本右对齐 |```### 效果:| 表头 | 表头 | 表头 || :------- | :------: | ---------: || 文本左对齐 | 文本居中 | 文本右对齐 || 文本左对齐 | 文本居中 | 文本右对齐 || 文本左对齐 | 文本居中 | 文本右对齐 | ***# 十七、emoji### 用法:> 直接使用即可### 例子:### 效果:", "1000000013", "1000000002,1000000007,1000000011", false, "BlogPublished", "MARKDOWN", null); 
    目前尚无回复
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5301 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 30ms UTC 07:20 PVG 15:20 LAX 00:20 JFK 03:20
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86