导入包含 html 代码的 mysql table 时出现语法错误

Syntax error when importing mysql table with html code in it

我正在尝试导入一个 mysql table,其中包含 html 代码的数据,它会生成语法错误。有人可以告诉我如何使用 html 代码

正确导入 mysql

Sytanx 错误:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''<ul>\r\n<li>Unpack the equipment and materials</li>\r\n<li>Secure the mounting '

你向我们展示了很少的错误,我可以看到它在抱怨红色单引号 '

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''<ul>\r\n<li>Unpack the equipment and materials</li>\r\n<li>Secure the mounting '

如果您注意到 MySQL 中引用文本的开头有 '' 而最后只有 ' MySQL 错误显示问题代码在单引号的起始位置,因此我们删除了一个单引号,将错误的语法包裹起来,我们最终得到

'<ul>\r\n<li>Unpack the equipment and materials</li>\r\n<li>Secure the mounting

所以它抱怨 <ul> 之前的单引号。您需要确保 HTML 在将其输入数据库之前是 MySQL 安全的,因此将单引号替换为 \' 或者如果它应该被渲染,您应该使用 &#39;

如果您使用 php,您可以使用 addslashes 在输入前用 \' 转义任何单引号 '

另一种选择是停止使用直接构造的查询,并在您的连接器中使用 prepare & bind_param,因为这样可以防止这种情况发生。

但是不幸的是,如果您正在使用我的sqlimport cli,并且这是一个预构建的 .sql 文件,您将不得不手动检查并修复它,我强烈推荐启用语法的编辑器可以做到这一点 MySQL workbench 它最适合 MySQL 语法