.execute database script opdracht

Schakelen tussen services met behulp van de vervolgkeuzelijst Versie . Meer informatie over navigatie.
Van toepassing op: ✅ Microsoft Fabric ✅ Azure Data Explorer

Voert een batch beheeropdrachten uit binnen het bereik van één database.

Opmerking

Selecteer de volledige opdrachttekst voordat u deze uitvoert. Anders stopt deze op de eerste lege regel in het script.

Aanbeveling

De opdracht slaagt standaard .execute database script altijd. Als u wilt dat de opdracht mislukt wanneer een van de opdrachten in het script mislukt, voert u de opdracht uit met de ThrowOnErrors eigenschap ingesteld op True

.execute database script with (ThrowOnErrors=true).

Permissions

U moet ten minste databasebeheerder machtigingen hebben om deze opdracht uit te voeren.

Syntaxis

.execute database script
[with(PropertyName=PropertyValue [, ...])] <|ControlCommandsScript

Meer informatie over syntaxisconventies.

https://microsoft-ce-csi.acrolinx.cloud/htmldata/en/rules/6fba4c0492df38150ba70881e2fae9640d6466a0.html

Parameterwaarden

Naam Typologie Verplicht Description
ControlCommandsScript string ✔️ Tekst met een of meer beheeropdrachten.
PropertyName, PropertyValue string Optionele eigenschappen. Zie ondersteunde eigenschappen.

Ondersteunde eigenschappen

Eigenschapsnaam Typologie Description
ContinueOnErrors bool Als dit is ingesteld op false : het script stopt bij de eerste fout. Als deze optie is ingesteld op true : de uitvoering van het script wordt voortgezet. Standaard: false.
ThrowOnErrors bool Als dit is ingesteld op true : het script genereert een fout (mislukt) bij de eerste fout. Werkt niet samen, ContinueOnErrorser is slechts één toegestaan. Standaard: false.

Retouren

Elke opdracht die in het script wordt weergegeven, wordt gerapporteerd als een afzonderlijke record in de uitvoertabel. Elke record heeft de volgende velden:

Uitvoerparameter Typologie Description
OperationId guid Id van de opdracht.
CommandType string Het type van de opdracht.
CommandText string Tekst van de specifieke opdracht.
Resultaat string Resultaat van de uitvoering van de specifieke opdracht.
Reden string Gedetailleerde informatie over het resultaat van de uitvoering van opdrachten.

Opmerking

  • De scripttekst kan lege regels en opmerkingen tussen de opdrachten bevatten.
  • Opdrachten worden opeenvolgend uitgevoerd, in de volgorde waarin ze worden weergegeven in het invoerscript.
  • Scriptuitvoering is opeenvolgend, maar niet-transactioneel en er wordt geen terugdraaiactie uitgevoerd bij een fout. U wordt aangeraden de idempotente vorm van opdrachten te gebruiken wanneer u deze gebruikt .execute database script.
  • Voor de uitvoering van de opdracht zijn databasebeheerdersmachtigingen vereist, naast de machtigingen die zijn vereist voor elke specifieke opdracht.
  • Standaardgedrag van de opdracht: mislukt bij de eerste fout. Deze kan worden gewijzigd met behulp van het eigenschapsargument.
  • Alleen-lezen beheeropdrachten (.show opdrachten) worden niet uitgevoerd en worden gerapporteerd met de status Skipped.

Aanbeveling

  • Deze opdracht is handig als u een bestaande database wilt klonen/dupliceren. U kunt de .show database schema command bestaande database (de brondatabase) gebruiken en de uitvoer ervan gebruiken als het Control-commands-script van '.execute database script'.
  • Als u het cluster wilt klonen/dupliceren, kunt u de ARM-sjabloon gebruiken en de resource opnieuw maken.

Aanbeveling

  • Deze opdracht is handig als u een bestaande database wilt klonen/dupliceren. U kunt de .show database schema command bestaande database (de brondatabase) gebruiken en de uitvoer ervan gebruiken als het Control-commands-script van '.execute database script'.

Example

In het volgende voorbeeld wordt een script met meerdere bewerkingen uitgevoerd, zelfs als een opdracht mislukt. Met het script wordt een tabel T gemaakt of samengevoegd met kolommen a en b van het type tekenreeks. Vervolgens wordt een bewaarbeleid voor tabellen T ingesteld om gegevens na 10 dagen voorlopig te verwijderen. Ten slotte wordt de SampleT1 functie gemaakt of gewijzigd. Hierbij wordt een parameter myLimit van het type lang gebruikt en worden de eerste myLimit rijen uit de tabel T1geretourneerd. De functie wordt gemaakt zonder deze tijdens het maken te valideren.

.execute database script with (ContinueOnErrors=true)
<|
//
// Create tables
.create-merge table T(a:string, b:string)
//
// Apply policies
.alter-merge table T policy retention softdelete = 10d 
//
// Create functions
.create-or-alter function
  with (skipvalidation = "true") 
  SampleT1(myLimit: long) { 
    T1 | take myLimit
}
OperationId CommandType CommandText Resultaat Reden
1d28531b-58c8-4023-a5d3-16fa73c06cfa TableCreate .create-merge table T(a:string, b:string) Volbracht
67d0ea69-baa4-419a-93d3-234c03834360 RetentionPolicyAlter .alter-merge table T policy retention softdelete = 10d Volbracht
0b0e8769-d4e8-4ff9-adae-071e52a650c7 FunctionCreateOrAlter .create-or-alter function with (skipvalidation = "true")SampleT1(myLimit: long) {T1 \| take myLimit} Volbracht