javascript - 插入 SQL 上的双引号和单引号

标签 javascript sql sqlite

我正在尝试使用 Javascript 和 SQLite 将动态元素插入到表中,当其中一个值具有单引号和双引号时,我遇到问题,例如 -- 7' 英寸"乙烯基 -- 我知道这个例子没有任何意义,但是这个应用程序的用户在表单中插入了各种垃圾。

我的查询会到处都是“”,我的问题是:是否有一个函数或其他东西可以让我使用我需要的真实字符串而不破坏所有内容?

这是代码:

$.each(data, function(i, item) {   
                tx.executeSql("INSERT INTO articulo (codart) VALUES (" + validate(item.CODART) + ")");
});


function validate(item){
        if(item == null){
            return null;
        }else{
            return "'" + item + "'";
        }
    }

最佳答案

您可以通过将单引号加倍来转义单引号,但仅使用参数会更容易:

tx.executeSql("INSERT INTO articulo (codart) VALUES (?)", [validate(item.CODART)]);

关于javascript - 插入 SQL 上的双引号和单引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24395257/

相关文章:

javascript - 在 JQuery 中所选行之后插入新行

python - 选择存在与限制 1

java - 如何使用 Java 字符串变量中的参数在 SQLite 数据库中创建新表?

php - SQLite查询运行缓慢,需要优化帮助

c - SQLite:当主数据库有一个打开的准备语句时,为什么我不能分离数据库?

javascript - 通过选项下拉 Javascript 更改字体

javascript - 将旧代码转换为 ember 组件

mysql - SELECT 来自上一个接收者的最后消息。数据库

javascript - 动态验证 HTML

sql - 在管道分隔的 sqlplus 中带有列标题的假脱机