首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL代码嗅探

SQL代码嗅探
EN

Stack Overflow用户
提问于 2010-04-17 14:10:07
回答 5查看 919关注 0票数 7

你能列出一些新手在SQL中做的坏事吗?

我发现"WHILE loop“在场景中的用法可以用set操作来解决。

另一个例子是仅当数据不存在时才插入数据。这可以使用LEFT OUTER JOIN实现。有些人选择“如果”

还有其他想法吗?

编辑:我正在寻找的是特定的场景(正如问题中提到的),这些场景可以使用SQL而不使用过程化构造来实现

谢谢

Lijo

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-04-17 14:16:02

下面是我看过的一些例子:

使用游标而不是等效(且更快)的集合操作(联接等)的

  • 适用于everything.
  • Code的动态SQL,它可以受到SQL注入攻击。
  • 完全外部联接,即使在不需要它们时也是如此。
  • 大型存储过程(数百/数千行)。

<代码>H111无注释。<代码>H212<代码>F213

票数 8
EN

Stack Overflow用户

发布于 2010-04-17 14:18:51

将ODBC或动态SQL调用放在整个代码中。

通常,最好是定义一个数据抽象层来提供对数据库的访问。所有的SQL代码都可以隐藏在该层中。这通常会避免复制类似的查询,并使更改数据模型变得更容易。

票数 4
EN

Stack Overflow用户

发布于 2010-04-17 14:17:06

就我个人而言:任何不是简单的INSERT、UPDATE、DELETE或SELECT语句的语句

我不喜欢SQL中的逻辑。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2657459

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档