代码之家  ›  专栏  ›  技术社区  ›  dkretz

伟大SQL开发人员的标志

sql
  •  5
  • dkretz  · 技术社区  · 17 年前

    根据他们的工作,您如何区分优秀的SQL开发人员?

    很少使用游标,并尝试重构它们。
    很少使用临时表,并尝试重构它们。
    自信地处理外部联接中的空值。
    避免未广泛实现的SQL扩展。

    5 回复  |  直到 17 年前
        1
  •  12
  •   Community Mohan Dere    6 年前

    我发现一个伟大的SQL开发人员通常也是一个伟大的数据库设计师,他更愿意参与数据库的设计和实现。这是因为一个糟糕的数据库设计可能会挫败甚至阻碍最好的开发人员——好的SQL本能在病态的设计面前,或者在RI很差或根本不存在的系统中并不总是正确的。因此,告诉伟大的SQL开发人员的一种方法是在数据建模上测试他们。

    此外,一个优秀的数据库开发人员必须拥有复杂的连接逻辑,并且准确地知道各种多路连接在不同情况下的结果。对连接缺乏舒适感是糟糕的SQL代码(以及糟糕的SQL设计)的首要原因。

    不使用游标。

    所以,像这样的高级概念的使用是不被禁止的,但是除非你在处理一个非常棘手的问题,而这个问题由于某种原因,不适合关系解决方案,否则你必须清楚地与SQL专家打交道。。。是的,它们可能是警告信号。

        2
  •  8
  •   splattne    17 年前

    我不认为游标、临时表或其他SQL实践本质上是不好的,也不认为它们的使用是一个数据库程序员有多优秀的明确标志。

    但一条经验法则可能是:一个伟大的数据库开发人员会发现一个 简洁优雅的解决方案

        3
  •  4
  •   Bill Karwin    17 年前

    以下几点不适用于普通软件开发人员,但适用于具有良好SQL技能的人员:

    • 定义有益的索引,但不定义冗余或未使用的索引。
    • 有效利用交易。
    • 值引用完整性。
    • 将规范化应用于数据库设计。
    • 知道空值和三值逻辑是如何工作的。
    • 了解查询参数的用途和优点。

    考虑一下成为一名优秀SQL开发人员的迹象。也许我会把做这些事情的人叫做“一个” 杂技演员

        4
  •  3
  •   John MacIntyre    17 年前

    将复杂问题简化为简单问题 而且易于维护。

        5
  •  0
  •   Cade Roux    17 年前

    了解如何使用信息模式和表元数据来编写通用代码或生成代码以保存重复的数据库任务。