
是否有漏洞与代码有关,与此无关
其中主流的连接MySQL的方式是用mysql或者mysql2包,它们只是提供了调用驱动的api。很多框架中包括egg,nest都是基于此封装的。
但这不是SQL注入的关键,它只是一种连接方式。它只管连接,不管其他的,存不存在SQL注入完全靠写代码的人本身啊。
一句脚本本没有问题(知道不让直接放sql的,也是放注入),但是你如果让SQL变成由用户输入拼接而成,那就存在SQL注入的风险。
你应该去了解SQL注入的原理,然后进行防患,百度就能找到,然后可以用ORM,一般都对输入做了处理,还能避免直接写SQL(但其实难的地方还得自己写)。
有不理解可以追问。
唔,屏幕那么小,你还想全部显示吗一次显示一部分也可以的吧,还有就是能导入到文件中去看,都能解决你的问题。
假如你的数据库名:test_db,有300张表。
解决方法一:
use information_schema;
select table_name
from information_schematables
where table_schema='test_db'
oder by table_name
limit 0,30; #30表示一次查多少,这个可以自己看着改啦
再来一次
select table_name
from information_schematables
where table_schema='test_db'
oder by table_name
limit 30,30;
运行个10次,到limit 270,30就把全部表都显示了一遍。
解决方法二:
唔,我觉得方法一不靠谱,还是这个办法给力
select table_name
from information_schematables
where table_schema='test_db'
into outfile 'd:/tmp/test_db_all_tablesxls';
-- 把表名都导进excel里了,方便进行各种查看
效果图:
在nodejs里连接和使用mysql
npm install knex@06 --save
npm install mysql
var knex = require('knex')({
client: 'mysql',
connection: {
host : '127001',
user : 'your_database_user',
password : 'your_database_password',
database : 'myapp_test'
}
});
knexselect('title', 'author', 'year')from('books')then(function(data){
//取到的数据
consolelog(data)
})
以上就是关于菜鸟教程中的nodejs连接mysql数据库教程存在sql注入问题吗全部的内容,包括:菜鸟教程中的nodejs连接mysql数据库教程存在sql注入问题吗、如何用nodejs实现mysql多表查询并显示结果及删除、如何在node.js里连接和使用mysql等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)