我正在尝试将数据从Webscraper传递到MySQL数据库。我有很多变量需要一次输入到数据库中,下面是我正在使用的代码片段。(其中etc.是有一堆更多的变量。
con.query(INSERT INTO Paper_2 (referenceCodeSubject,referenceCode,subject, etc.) values ('"+referenceCodeSubject+"','"+referenceCode+"','"+subject+"', etc.))
数据库中的列具有INT、VARCHAR和CHAR类型。
我的问题是,当我刮取不是所有的变量将被赋值,并将保持为'null',我不能传递这个null作为NULL到MySQL.这也将是相当复杂的排序不同的情况下,当传递什么,由于大量的变量.
我希望有一个简单的方法来做到这一点,因为到目前为止我看到的唯一解决方案是省略查询中的值(这很难,因为我需要决定省略哪些值)或传递一个字符串“NULL”或仅传递一个值0。有其他方法吗?
2条答案
按热度按时间ljsrvy3e1#
最好使用内置的转义功能来避免sql注入攻击!
a0zr77ik2#
如果您遇到绑定值有时是有效字符串,有时是未定义的情况,请在sqlValues中使用or运算符,通过速记代码处理这两种情况: