Udostępnij za pośrednictwem


sp_updateextendedproperty (języka Transact-SQL)

Aktualizuje wartości istniejących właściwośćrozszerzone.

Ikona łącza do tematuJęzyka Transact-SQL składni konwencje

Składnia

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' }
                     ]
              ]
        ]
    ]

Argumenty

  • [ @name= ]{ 'property_name'}
    Jest nazwą właściwość mają być aktualizowane.property_namejest sysname, i nie może być NULL.

  • [ @value= ]{ 'value'}
    To wartość skojarzona z właściwość.valuejest sql_variant, domyślna wartość NULL.Rozmiar value nie może być więcej niż 7500 bajtów.

  • [ @level0type= ]{ 'level0_object_type'}
    Jest typ zdefiniowany przez użytkownikalub użytkownika.level0_object_typejest varchar(128), domyślna wartość NULL.Prawidłowe dane wejściowe są zestawu, umowy, powiadomienie o zdarzeniu, grupa plików, typ wiadomości, funkcja PARTYCJI, schemat PARTYCJI, powiązania usługi zdalnego, trasy, SCHEMATU, usługi, użytkownika, WYZWALACZ, typ i NULL.

    Ważna informacjaWażne:

    Użytkownik i typ jako poziom-0 typy zostaną usunięte w przyszłej wersja programu SQL Server.Unikaj używania tych funkcji w nowych prac rozwojowych i plan do modyfikowania aplikacji, które obecnie korzystają z tych funkcji.Użyj SCHEMATU jako typ poziom 0 w użytkownika.Dla typu należy użyć SCHEMATU jako typ poziom 0 i typ jako typ poziom 1.

  • [ @level0name= ]{ 'level0_object_name'}
    Jest nazwą typu obiektu poziom 1 określonego.level0_object_namejest sysname Domyślna wartość NULL.

  • [ @level1type= ]{ 'level1_object_type'}
    Jest to typ obiektu poziom 1.level1_object_typejest varchar(128) Domyślna wartość NULL.Prawidłowe dane wejściowe są agregacji, domyślny, funkcja, nazwa pliku LOGICZNEGO, procedury, kolejki, reguły, SYNONIM, tabeli, typu, WIDOKU, KOLEKCJI SCHEMATU XML i NULL.

  • [ @level1name= ]{ 'level1_object_name'}
    Jest nazwą typu obiektu poziom 1 określonego.level1_object_namejest sysname Domyślna wartość NULL.

  • [ @level2type= ]{ 'level2_object_type'}
    Jest to typ obiektu poziom 2.level2_object_typejest varchar(128) Domyślna wartość NULL.Prawidłowe dane wejściowe są kolumny, ograniczenie, powiadomienie o zdarzeniu, indeks, PARAMETR, WYZWALACZ i wartości NULL.

  • [ @level2name= ]{ 'level2_object_name'}
    Jest nazwą typu obiektu poziom 2 określonego.level2_object_namejest sysname, domyślna wartość NULL.

Wartości kodów powrotnych

0 (sukces) lub 1 (błąd)

Uwagi

O określenie właściwości rozszerzone, obiekty w SQL Server bazy danych dzieli się na trzy poziomy (0, 1 i 2).Poziom 0 jest najwyższy poziom i jest definiowana jako obiekty zawarte w bazie danych zakres.Obiekty poziomu 1 są zawarte w schematu lub użytkownika zakresi poziom 2 obiekty są zawarte przez obiekty poziom 1.Właściwości rozszerzone można zdefiniować dla obiektów w dowolnym z tych poziomów.Odwołania do obiektu w jeden poziom musi być kwalifikowany z nazwami wyższy poziom obiektów, lub je zawierają.Aby uzyskać pełną listę obiektów i ich typy prawidłowy poziom 0, 1 i 2, zobacz Używanie rozszerzonych właociwooci obiektów bazy danych.

Biorąc pod uwagę prawidłowego property_name i value, null, są wszystkie typy obiektów i nazwy właściwość , zaktualizowane należy do bieżącej bazy danych.

Uprawnienia

Członkowie db_owner i db_ddladmin ról stałej bazy danych może zaktualizować właściwości rozszerzone dowolny obiekt z następującym wyjątkiem: db_ddladminnie można dodać właściwości do samej bazy danych lub do użytkowników lub role.

Użytkownicy mogą aktualizować właociwooci rozszerzone do obiektów są właścicielami lub w którym mają oni uprawnienia ALTER lub FORMANTU.Aby uzyskać pełną listę wymaganych uprawnień, zobacz Używanie rozszerzonych właociwooci obiektów bazy danych.

Przykłady

A.Aktualizowanie rozszerzone właściwość kolumna

Poniższy przykład aktualizuje wartość właściwość Caption w kolumna ID w tabela T1.

USE AdventureWorks2008R2;
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.Aktualizowanie rozszerzonych właściwość bazy danych

Poniższy przykład tworzy najpierw rozszerzone właściwość na AdventureWorks2008R2 przykładowej bazy danych i aktualizuje wartość tej właściwość.

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