Delen via


Type.ReplaceTableKeys

Syntaxis

Type.ReplaceTableKeys(tableType as type, keys as list) as type

Info

Retourneert een nieuw tabeltype waarbij alle sleutels worden vervangen door de opgegeven lijst met sleutels.

Elke sleutel wordt gedefinieerd met behulp van een record in de volgende vorm:

  • Columns: een lijst met de kolomnamen die de sleutel definiëren
  • Primary: true als de sleutel de primaire sleutel van de tabel is; anders, false

De opgegeven lijst met sleutels wordt gevalideerd om ervoor te zorgen dat er niet meer dan één primaire sleutel is gedefinieerd en dat alle sleutelkolomnamen aanwezig zijn in het tabeltype.

Voorbeeld 1

Vervang de sleutelgegevens van een tabeltype.

Gebruik

let
    BaseType = type table [ID = number, FirstName = text, LastName = text],
    KeysAdded = Type.ReplaceTableKeys(
        BaseType, 
        {
            [Columns = {"ID"}, Primary = true],
            [Columns = {"FirstName", "LastName"}, Primary = false]
        }
    ),
    DetailsOfKeys = Type.TableKeys(KeysAdded)
in
    DetailsOfKeys

Uitvoer

{
    [Columns = {"ID"}, Primary = true],
    [Columns = {"FirstName", "LastName"}, Primary = false]
}

Voorbeeld 2

Wis de sleutelgegevens die eerder zijn gedefinieerd voor een tabeltype.

Gebruik

let
    TypeWithKey = Type.AddTableKey(type table [ID = number, Name = text], {"ID"}, true),
    KeyRemoved = Type.ReplaceTableKeys(TypeWithKey, {}),
    DetailsOfKeys = Type.TableKeys(KeyRemoved)
in
    DetailsOfKeys

Uitvoer

{}