本帖最后由 Simon.hu 于 2021-8-18 08:38 编辑
先看看他的庐山真面目
为什么我要把这个下拉框放下来?
因为这个功能内置库,sqlserver,MySQL,Oracle,postgreSQL等等都是支持的,暂时不支持ODBC连接的表
是不是泛微超级广
具体用法:
1.选择一个数据库(各种库都可以)
2.设置参数,这些参数可以在SQL语句中使用,当然这些参数可以是前段传递过来的内容
3.编辑SQL语句,我们有专门的智能提示,方便您编辑SQL语句
4.完成以上配置后,你可以定义一个返回值参数,这样SQL语句执行的结果就会保存到这个参数中。
用户执行数据库更新逻辑时,返回值是最终受SQL影响的行数,如果执行查询语句,则返回查询结果集
5.如果你担心自己写的SQL有问题,你可以点击【测试】按钮,活字格会帮你执行测试一下,让你看一下效果
问题:
1.为什么没有前端输入SQL执行SQL命令,只有服务端命令才能执行SQL命令?
这个是安全性考虑,如果前端搞SQL说明最终用户可以写SQL进来,这样非常容易发生SQL注入的问题
2.放到后端就没有SQL注入了吗?
这个SQL注入有行业的标准的解决方案,我们使用的就是参数化查询的方式,放到后端,只要开发者自己不写奇奇怪怪的SQL,那肯定不担心SQL注入问题
使用场景:
1.大神需要复杂逻辑的处理能力
由于我们目前的数据库操作命令只支持对表进行基本的DML操作,但是一些大神想要直接通过SQL语句来操作数据库,他们需要一些更复杂的功能,比如:编写和调用存储过程、创建临时表、创建表索引、创建多个联合查询等
所以我也不整那些虚的了,直接给大神就上最最基础,也最最有效的方案--------执行SQL命令
2.解决性能问题
很多人都说活字格的命令性能不好,类似的话;这次这个功能就是让大神的你不再有这个担心。
活字格再怎么快,最后也是变成代码执行,所以一些时候活字格的极限就是接近C#等等代码的极限
代码再怎么快,最后也是变成SQL语句操作数据库,所以再怎么厉害的代码还是不会比SQL操作快
那么这次活字格直接支持执行SQL,一步到位,性能提升到飞起;何以见得???
真实测试效:
使用SqlServer数据库测试,插入5000行数据的速度
这是1.5秒对72秒的差距啊
|