我一直认为引用SQL查询中的整数是不受欢迎的,但我最近了解到像Django这样的突出框架坚持这种做法。它实际上完全可以接受吗?
答案 0 :(得分:8)
问题意味着您首先在SQL查询中放置了裸值。我认为最“可接受”的做法是参数化查询 - 这样你就不必担心这样的问题;让数据访问库为您处理它。
答案 1 :(得分:0)
在SQL中引用整数只会带来轻微的性能损失。删除引号比将ASCII表示转换为二进制整数要少得多。
所以我说它完全可以接受,特别是对于RAD框架。
答案 2 :(得分:0)
我不确定所有SQL数据库,但SQL Server会隐式地将引用的数字转换为int。例如,以下命令在SQL Server 2000中返回166
:
select '500'/3