sp_rename (Transact-SQL) (Dansk)

  • 10/14/2020
  • 6 minutter at læse
    • m
    • c
    • M
    • m
    • r
    • +5

Gælder for: SQL Server (alle understøttede versioner) Azure SQL Database Azure Synapse Analytics

Ændrer navnet på et brugeroprettet objekt i den aktuelle database . Dette objekt kan være en tabel-, indeks-, kolonne-, aliasdatatype eller Microsoft .NET Framework-brugerdefineret type CLR-runtime (CLR).

Bemærk

I Azure Synapse Analytics, sp_rename er i Preview og kan kun bruges til at omdøbe en COLUMN i et brugerobjekt.

Forsigtig

Ændring af en hvilken som helst del af et objekt navn kan bryde scripts og lagrede procedurer. Vi anbefaler, at du ikke bruger denne erklæring til at omdøbe lagrede procedurer, udløsere, brugerdefinerede funktioner eller visninger; I stedet skal du slippe objektet og gendanne det igen med det nye navn.

Transact-SQL-syntakskonventioner

Syntaks

Argumenter

“objektnavn”
Er det aktuelle kvalificerede eller ikke-kvalificerede navn på brugerobjektet eller datatypen. Hvis objektet, der skal omdøbes, er en kolonne i en tabel, skal objektnavn være i formtabellen.kolonne eller skema.tabel.kolonne. Hvis objektet, der skal omdøbes, er et indeks, skal objektnavn være i formtabellen.index eller skema.tabel.index. Hvis objektet, der skal omdøbes, er en begrænsning, skal objektnavn være i formen skema.begrænsning.

Citatmærker er kun nødvendige, hvis der er angivet et kvalificeret objekt. Hvis der gives et fuldt kvalificeret navn, inklusive et databasenavn, skal databasenavnet være navnet på den aktuelle database. objektnavn er nvarchar (776) uden standard.

“nyt_navn”
Er det nye navn for det angivne objekt. new_name skal være et enhedsnavn og skal følge reglerne for identifikatorer. nyt navn er sysname uden standard.

Bemærk

Triggernavne kan ikke starte med # eller ##.

Værdi Beskrivelse
KOLONNE En kolonne, der skal omdøbes.
DATABASE En brugerdefineret database. Denne objekttype kræves, når du omdøber en database.
INDEX Et brugerdefineret indeks. Omdøbning af et indeks med statistik, også omdøbning af statistikker.
OBJECT Et element af en type spores i sys.objects. For eksempel kunne OBJECT bruges til at omdøbe objekter inklusive begrænsninger (CHECK, UDENLANDSK KEY, PRIMÆR / UNIK KEY), brugertabeller og regler.
STATISTIK Gælder for: SQL Server 2012 (11.x) og senere og Azure SQL Database.
Statistik oprettet eksplicit af en bruger eller oprettet implicit med et indeks. Omdøbning af statistikken for et indeks omdøber også indekset automatisk.
USERDATATYPE En CLR Brugerdefinerede typer tilføjet ved at udføre CREATE TYPE eller sp_addtype.

“KOLONNE” Gælder for: Azure Synapse Analytics
I sp_rename (preview) ) for Azure Synapse Analytics er COLUMN en obligatorisk parameter, der angiver, at den objekttype, der skal omdøbes, er en kolonne. Det er en varchar (13) uden standardværdi og skal altid inkluderes i udsagnet sp_rename (preview). En kolonne kan kun omdøbes, hvis det er en ikke-distributionskolonne.

Returkodeværdier

0 (succes) eller et ikke-nul nummer (fiasko)

Bemærkninger

Gælder for SQL Server (alle understøttede versioner) og Azure SQL Database
sp_rename omdøber automatisk det tilknyttede indeks, hver gang en PRIMÆR NØGLE- eller UNIQUE-begrænsning omdøbes. Hvis et omdøbt indeks er bundet til en PRIMÆR KEY-begrænsning, omdøbes den PRIMÆRE KEY-begrænsning også automatisk af sp_rename.

Gælder for SQL Server (alle understøttede versioner) og Azure SQL Database
sp_rename kan bruges for at omdøbe primære og sekundære XML-indekser.

Gælder for SQL Server (alle understøttede versioner) og Azure SQL Database
Omdøbning af en gemt procedure, funktion, visning eller udløser ændrer ikke navnet på den tilsvarende objekt enten i definitionskolonnen i katalogvisningen sys.sql_modules eller opnået ved hjælp af den indbyggede OBJECT_DEFINITION-funktion. Derfor anbefaler vi, at sp_rename ikke bruges til at omdøbe disse objekttyper. I stedet skal du slippe og genskabe objektet med dets nye navn.

Gælder for SQL Server (alle understøttede versioner), Azure SQL Database og Azure Synapse Analytics
Omdøbning af et objekt såsom en tabel eller kolonne omdøber ikke automatisk referencer til det pågældende objekt.Du skal ændre alle objekter, der refererer til det omdøbte objekt manuelt. For eksempel, hvis du omdøber en tabelkolonne, og der refereres til den kolonne i en trigger, skal du ændre triggeren for at afspejle det nye kolonnenavn. Brug sys.sql_expression_dependencies til at liste afhængigheder af objektet, før du omdøber det.

Gælder for SQL Server (alle understøttede versioner), Azure SQL Database og Azure Synapse Analytics
Du kan ændre navnet på et objekt eller datatype kun i den aktuelle database. Navnene på de fleste systemdatatyper og systemobjekter kan ikke ændres.

Tilladelser

For at omdøbe objekter, kolonner og indekser kræver ALTER tilladelse til objektet. For at omdøbe brugertyper kræves CONTROL-tilladelse til typen. For at omdøbe en database kræves medlemskab af sysadmin- eller dbcreator-faste serverroller

Eksempler

A. Omdøbning af en tabel

Følgende eksempel omdøber SalesTerritory -tabellen til SalesTerr i Sales skema.

B. Omdøbning af en kolonne

Følgende eksempel omdøber TerritoryID kolonnen i SalesTerritory -tabellen til TerrID.

C. Omdøbning af et indeks

Følgende eksempel omdøber IX_ProductVendor_VendorID indekset til IX_VendorID.

D . Omdøbning af en aliasdatatype

Følgende eksempel omdøber Phone aliasdatatypen til Telephone.

E. Omdøb af begrænsninger

Følgende eksempler omdøber en PRIMÆR KEY-begrænsning, en CHECK-begrænsning og en UDENLANDSK KEY-begrænsning. Når du omdøber en begrænsning, skal det skema, som begrænsningen hører til, specificeres.

F. Omdøbning af statistik

Følgende eksempel opretter et statistikobjekt ved navn contactMail1 og omdøber derefter statistikken til NewContact ved hjælp af sp_rename. Når du omdøber statistik, skal objektet specificeres i formatet skema.tabel.statistiknavn.

Eksempler: Azure Synapse Analytics

G. Omdøbning af en kolonne

Følgende eksempel omdøber c1 kolonnen i table1 -tabellen til col1.

Se også

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *