USE AdventureWorks;
GO
IF OBJECT_ID ( 'Production.uspGetList', 'P' ) IS NOT NULL 
    DROP PROCEDURE Production.uspGetList;
GO
CREATE PROCEDURE Production.uspGetList ...
请问 'P' 是什么意思,还有其他属性吗,谢谢

解决方案 »

  1.   


    select distinct type from sysobjects
    type
    ----
    TR

    SQ
    PC

    IT


    FN



    TF
    IF
    V (15 行受影响)
      

  2.   

    省略p也行
    有'p'只是可以更明确地跟后边的drop proc对应
      

  3.   


    AF = Aggregate function (CLR)C = CHECK constraintD = DEFAULT (constraint or stand-alone)F = FOREIGN KEY constraintFN = SQL scalar functionFS = Assembly (CLR) scalar-functionFT = Assembly (CLR) table-valued functionIF = SQL inline table-valued functionIT = Internal tableP = SQL Stored ProcedurePC = Assembly (CLR) stored-procedurePG = Plan guidePK = PRIMARY KEY constraintR = Rule (old-style, stand-alone)RF = Replication-filter-procedureS = System base tableSN = SynonymSQ = Service queueTA = Assembly (CLR) DML triggerTF = SQL table-valued-functionTR = SQL DML triggerTT = Table typeU = Table (user-defined)UQ = UNIQUE constraintV = ViewX = Extended stored procedure
      

  4.   

    2005的东东
    语法
     
    OBJECT_ID ( 
        '[ database_name . [ schema_name ] . | schema_name . ]     object_name' [ ,'object_type' ] )
     备注
    当该参数对系统函数可选时,则系统采用当前数据库、主机、服务器用户或数据库用户。内置函数后面必须跟圆括号。当指定临时表名时,除非当前数据库为 tempdb,否则必须在该临时表名之前加上数据库名称。例如:SELECT OBJECT_ID('tempdb..#mytemptable')。系统函数可以在选择列表、WHERE 子句和任何允许使用表达式的地方使用。有关详细信息,请参阅表达式(Transact-SQL)和 WHERE (Transact-SQL)。 参数
    ' object_name '要使用的对象。object_name 的数据类型为 varchar 或 nvarchar。如果 object_name 的数据类型为 varchar,则它将隐式转换为 nvarchar。可以选择是否指定数据库和架构名称。' object_type '架构范围的对象类型。object_type 的数据类型为 varchar 或 nvarchar。如果 object_type 的数据类型为 varchar,则它将隐式转换为 nvarchar。有关对象类型的列表,请参阅 sys.objects (Transact-SQL) 中的 type 列。