sp_updateextendedproperty (Transact-SQL)sp_updateextendedproperty (Transact-SQL)

DIESES THEMA GILT FÜR:jaSQL Server (ab 2008)jaAzure SQL-DatenbankneinAzure SQL Data Warehouse neinParallel Data Warehouse THIS TOPIC APPLIES TO:yesSQL Server (starting with 2008)yesAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

Aktualisiert den Wert einer vorhandenen erweiterten Eigenschaft.Updates the value of an existing extended property.

Themenlinksymbol Transact-SQL Syntax Conventions (Transact-SQL-Syntaxkonventionen)Topic link icon Transact-SQL Syntax Conventions

SyntaxSyntax


sp_updateextendedproperty  
    [ @name = ]{ 'property_name' }   
    [ , [ @value = ]{ 'value' }  
        [, [ @level0type = ]{ 'level0_object_type' }  
         , [ @level0name = ]{ 'level0_object_name' }  
              [, [ @level1type = ]{ 'level1_object_type' }  
               , [ @level1name = ]{ 'level1_object_name' }  
                     [, [ @level2type = ]{ 'level2_object_type' }  
                      , [ @level2name = ]{ 'level2_object_name' }  
                     ]  
              ]  
        ]  
    ]  

ArgumenteArguments

[ @name=] {"Property_name'}[ @name= ]{ 'property_name'}
Der Name der zu aktualisierenden Eigenschaft.Is the name of the property to be updated. Property_name ist Sysname, und darf nicht NULL sein.property_name is sysname, and cannot be NULL.

[ @value=] {"Wert'}[ @value= ]{ 'value'}
Der Wert, der der Eigenschaft zugeordnet ist.Is the value associated with the property. Wert ist Sql_variant, hat den Standardwert NULL.value is sql_variant, with a default of NULL. Die Größe des Wert darf nicht größer als 7.500 Bytes sein.The size of value may not be more than 7,500 bytes.

[ @level0type=] {"level0_object_type'}[ @level0type= ]{ 'level0_object_type'}
Der Benutzer oder benutzerdefinierte Typ.Is the user or user-defined type. level0_object_type ist varchar(128), hat den Standardwert NULL.level0_object_type is varchar(128), with a default of NULL. Gültige Eingaben sind ASSEMBLY, Vertrag, EVENT NOTIFICATION, DATEIGRUPPE, MESSAGE TYPE, PARTITION FUNCTION, PARTITION SCHEME, PLAN GUIDE, REMOTE SERVICE BINDING, ROUTE, SCHEMA, SERVICE, Benutzer, TRIGGER, Typ und NULL.Valid inputs are ASSEMBLY, CONTRACT, EVENT NOTIFICATION, FILEGROUP, MESSAGE TYPE, PARTITION FUNCTION, PARTITION SCHEME, PLAN GUIDE, REMOTE SERVICE BINDING, ROUTE, SCHEMA, SERVICE, USER, TRIGGER, TYPE, and NULL.

Wichtig

USER und TYPE als Typen der Ebene 0 werden in einer zukünftigen Version von SQL ServerSQL Server nicht mehr unterstützt.USER and TYPE as level-0 types will be removed in a future version of SQL ServerSQL Server. Nutzen Sie diese Funktionen bei Neuentwicklungen nicht mehr, und planen Sie die Änderung von Anwendungen, die diese Funktionen zurzeit verwenden.Avoid using these features in new development work, and plan to modify applications that currently use these features. Verwenden Sie SCHEMA anstelle von USER als Typ der Ebene 0.Use SCHEMA as the level 0 type instead of USER. Verwenden Sie für TYPE als Typ der Ebene 0 SCHEMA und TYPE als Typ der Ebene 1.For TYPE, use SCHEMA as the level 0 type and TYPE as the level 1 type.

[ @level0name=] {"level0_object_name'}[ @level0name= ]{ 'level0_object_name'}
Der Name des angegebenen Objekttyps der Ebene 1.Is the name of the level 1 object type specified. level0_object_name ist Sysname hat den Standardwert NULL.level0_object_name is sysname with a default of NULL.

[ @level1type=] {"level1_object_type'}[ @level1type= ]{ 'level1_object_type'}
Der Typ des Objekts der Ebene 1.Is the type of level 1 object. level1_object_type ist varchar(128) hat den Standardwert NULL.level1_object_type is varchar(128) with a default of NULL. Gültige Eingabewerte sind AGGREGATE, DEFAULT, FUNCTION, LOGICAL FILE NAME, PROCEDURE, QUEUE, RULE, SYNONYM, TABLE, TABLE_TYPE, TYPE, VIEW, XML SCHEMA COLLECTION und NULL.Valid inputs are AGGREGATE, DEFAULT, FUNCTION, LOGICAL FILE NAME, PROCEDURE, QUEUE, RULE, SYNONYM, TABLE, TABLE_TYPE, TYPE, VIEW, XML SCHEMA COLLECTION, and NULL.

[ @level1name=] {"level1_object_name'}[ @level1name= ]{ 'level1_object_name'}
Der Name des angegebenen Objekttyps der Ebene 1.Is the name of the level 1 object type specified. level1_object_name ist Sysname hat den Standardwert NULL.level1_object_name is sysname with a default of NULL.

[ @level2type=] {"level2_object_type'}[ @level2type= ]{ 'level2_object_type'}
Der Typ des Objekts der Ebene 2.Is the type of level 2 object. level2_object_type ist varchar(128) hat den Standardwert NULL.level2_object_type is varchar(128) with a default of NULL. Gültige Eingabewerte sind COLUMN, CONSTRAINT, EVENT NOTIFICATION, INDEX, PARAMETER, TRIGGER und NULL.Valid inputs are COLUMN, CONSTRAINT, EVENT NOTIFICATION, INDEX, PARAMETER, TRIGGER, and NULL.

[ @level2name=] {"level2_object_name'}[ @level2name= ]{ 'level2_object_name'}
Der Name des angegebenen Objekttyps der Ebene 2.Is the name of the level 2 object type specified. level2_object_name ist Sysname, hat den Standardwert NULL.level2_object_name is sysname, with a default of NULL.

RückgabecodewerteReturn Code Values

0 (Erfolg) oder 1 (Fehler)0 (success) or 1 (failure)

HinweiseRemarks

Für das Angeben erweiterter Eigenschaften werden die Objekte in einer SQL ServerSQL Server-Datenbank in drei Ebenen (0, 1 und 2) unterteilt.For the purpose of specifying extended properties, the objects in a SQL ServerSQL Server database are classified into three levels (0, 1, and 2). Die Ebene 0 ist die höchste Ebene und ist definiert als Objekte, die im Datenbankbereich enthalten sind.Level 0 is the highest level and is defined as objects contained at the database scope. Objekte der Ebene 1 sind in einem Schema- oder Benutzerbereich enthalten, und Objekte der Ebene 2 sind in Objekten der Ebene 1 enthalten.Level 1 objects are contained in a schema or user scope, and level 2 objects are contained by level 1 objects. Erweiterte Eigenschaften können für Objekte auf einer dieser Ebenen definiert werden.Extended properties can be defined for objects at any of these levels. Verweise auf ein Objekt einer Ebene müssen mit den Namen der Objekte der höheren Ebene gekennzeichnet werden, die diese besitzen oder enthalten.References to an object in one level must be qualified with the names of the higher level objects that own or contain them.

Wenn bei einem gültigen Property_name und Wert, wenn alle Objekttypen und-Namen null sind, gehört die aktualisierte Eigenschaft zur aktuellen Datenbank.Given a valid property_name and value, if all object types and names are null, the property updated belongs to the current database.

BerechtigungenPermissions

Mitglieder der festen Datenbankrollen db_owner und db_ddladmin können die erweiterten Eigenschaften jedes Objekts mit einer Ausnahme aktualisieren: db_ddladmin kann der Datenbank selbst oder Benutzern bzw. Rollen keine Eigenschaften hinzufügen.Members of the db_owner and db_ddladmin fixed database roles may update the extended properties of any object with the following exception: db_ddladmin may not add properties to the database itself, or to users or roles.

Die Benutzer können erweiterte Eigenschaften für Objekte aktualisieren, die sie besitzen oder für die sie die ALTER- oder CONTROL-Berechtigung haben.Users may update extended properties to objects they own, or on which they have ALTER or CONTROL permissions.

BeispieleExamples

A.A. Aktualisieren einer erweiterten Eigenschaft für eine SpalteUpdating an extended property on a column

Im folgenden Beispiel wird der Wert der Caption-Eigenschaft für die ID-Spalte in der T1-Tabelle aktualisiert.The following example updates the value of property Caption on column ID in table T1.

USE AdventureWorks2012;  
GO  
CREATE TABLE T1 (id int , name char (20));  
GO  
EXEC sp_addextendedproperty   
    @name = N'Caption'  
    ,@value = N'Employee ID'  
    ,@level0type = N'Schema', @level0name = dbo  
    ,@level1type = N'Table',  @level1name = T1  
    ,@level2type = N'Column', @level2name = id;  
GO  
--Update the extended property.  
EXEC sp_updateextendedproperty   
    @name = N'Caption'  
    ,@value = 'Employee ID must be unique.'  
    ,@level0type = N'Schema', @level0name = dbo  
    ,@level1type = N'Table',  @level1name = T1  
    ,@level2type = N'Column', @level2name = id;  
GO  

B.B. Aktualisieren einer erweiterten Eigenschaft für eine DatenbankUpdating an extended property on a database

Im folgenden Beispiel wird zunächst eine erweiterte Eigenschaft für die AdventureWorks2012AdventureWorks2012-Beispieldatenbank erstellt und dann der Wert dieser Eigenschaft aktualisiert.The following example first creates an extended property on the AdventureWorks2012AdventureWorks2012 sample database and then updates the value of that property.

USE AdventureWorks2012;  
GO  
EXEC sp_addextendedproperty   
@name = N'NewCaption', @value = 'AdventureWorks2012 Sample OLTP Database';  
GO  
USE AdventureWorks2012;  
GO  
EXEC sp_updateextendedproperty   
@name = N'NewCaption', @value = 'AdventureWorks2012 Sample Database';  
GO  

Siehe auchSee Also

Datenbankmodul gespeicherte Systemprozeduren ( Transact-SQL ) Database Engine Stored Procedures (Transact-SQL)
Sys.fn_listextendedproperty ( Transact-SQL ) sys.fn_listextendedproperty (Transact-SQL)
Sp_addextendedproperty ( Transact-SQL ) sp_addextendedproperty (Transact-SQL)
Sp_dropextendedproperty ( Transact-SQL ) sp_dropextendedproperty (Transact-SQL)
Sys. extended_properties ( Transact-SQL )sys.extended_properties (Transact-SQL)