我可以为表和存储过程赋予相同的名称吗?

use*_*907 3 sql-server-2008 stored-procedures

是否可以将存储过程命名为与表相同的名称?我有一个名为“buyers”的现有表,我正在尝试创建一个名为“buyers”的存储过程,但出现此错误:

数据库中已经有一个名为“buyers”的对象。

SQL*_*tar 10

不,这在 MSDN 文档中有明确说明

过程名称必须符合标识符规则,并且在模式中必须是唯一的。

由于您有一个同名的表,因此在该架构中,您无法创建具有该名称的存储过程。

  • 公平地说,如果该声明以“在模式中的所有对象中唯一”结尾,则该声明会稍微清晰一些。目前,它可以在模式中的所有过程中被解释为唯一的。恕我直言。 (2认同)