当前您所在的位置:首页>新闻中心>新品发布
新品发布
行业动态
营销活动

SQL Prompt 答疑一 :什么是排名建议 ,为什么是个好主意?

发布时间:2021/03/11 浏览量:1962

图片

 

关于SQL Prompt的问题

SQL Prompt里有什么?

要简明扼要地回答这个问题是很棘手的,只是因为有太多的内容。首先,这里是一个整体功能图。如果想了解更多关于某个实用程序的信息,只需看看《SQL Prompt功能查找器》,就能了解如何找到它,以及它的作用。

 

图片

 

为什么SQL代码编辑器要花这么长时间才有'IntelliSense'的功能?

智能代码完成('IntelliSense'是微软对它的称呼),从程序化代码到SQL的传播,花了很长时间。自从Visual Basic和Turbo Pascal问世以来,它已经是每个程序代码集成开发环境的代码编辑器的常用功能。它是很好的功能,因为没有人愿意必须记住函数的描述,以及它们的参数列表。这也不是什么好玩的事,必须一直参考语法图。

 

之所以花了点时间来学习SQL,是因为它很难实现。SQL与Pascal或Basic不同,因为它做的事情和典型的程序语言不一样。SQL查询只是定义结果应该是什么,而不是如何得到它,使用的语法是尽可能的类似于英语语音。程序化的细节都是由查询优化器在 "幕后 "整理出来的。SQL还处理的是一个动态系统而不是静态代码。SQL代码并不是真正的线性代码:在SQL语句中某些点的选择的相关性是基于你打算在查询或语句中稍后输入的内容,例如,与列的列表,你一般希望直接指定在它们所属的表之后。

 

什么是 "排名建议",为什么是个好主意?

代码完成的建议会显示在一个列表中,你可以从中选择。在代码的任何一点上,选择的范围可以很大,也可以非常有限。这并不简单,解决的办法也不只是按字母顺序列出所有的可能性。那往往是信息过载,错误的信息排在最前面。

 

举个例子:在一个批次的开始,你有一个五十八个关键词,可以开始一个批次。你应该按字母顺序排列吗?你很可能会选择一个 SELECT 语句,但你很可能是以 USE 或 DECLARE 开始。有一个概率的顺序,所以也许您需要把经常出现的东西放在列表的最前面,这样您就可以不用滚动,直接刺探您想要的东西。如果你再输入一个'S',那么可能会是SET或SELECT,不过如果你想押注等级圈外人,还有SAVE、SETUSER或SHUTDOWN。

 

你要的是SELECT,所以你输入,或者选择SELECT * FROM,因为你有点迷茫,你还没有打开对象资源管理器看看有哪些表和视图。这时你想看到这些类型的对象的选取列表。你甚至可以从表值函数中进行选择,所以你的列表中应该包括接下来的这些对象类型。我想,你可能想指定表的模式前缀,也有可能需要指定数据库,但我们开始远离日常代码了。如果你想做更深奥的代码,你不会介意滚动来获得它,因为它仍然节省你的时间,而且它防止了错别字。

 

这里有几个变量在起作用,会影响对象名称和对象类型的建议顺序。有用户的技术水平,他们正在做的工作类型和他们使用的数据库环境。我还会加上程序员对工作方式的偏好。比如说,他们是喜欢字母顺序还是喜欢可能性顺序?他们能应付多少信息过载?

 

SQL Prompt传统上采用对象类型和字母排序相结合的方式对列表进行排序。多年来,它在确保只包含相关建议的方式上有所改进。然而,从第10版开始,SQL Prompt试图将最相关的建议放在建议列表的顶部,使用最可能的对象类型、对象名称与用户输入的内容的匹配程度以及以前使用过的建议的组合。你可以开启和关闭该功能。这就是所谓的 "排名建议"。

北京哲想软件有限公司