4.7 (3)
Beoordeling
(2)
(1)
(0)
(0)
(0)

FAQ-Wiki-SQL Server

Hoe opgeslagen SQL scripts in de database te importeren?

Antwoord:

Er zijn twee manieren om gegevens op te slaan, ondersteund door de Recovery Toolbox for SQL Server:

  1. U kunt SQL scripts naar de harddisk opslaan, zij zullen database objecten aanmaken, tabellen, bijvoorbeeld en gegevens in deze tabellen invoegen.
  2. U kunt ook scripts starten in databases, gedefinieerd door gebruikers, deze scripts zijn geschreven in de SQL taal.

Let op dat SQL scripts verschillend kunnen zijn, ondanks het feit dat ze gebaseerd zijn op dezelfde bestanden van de database. Dit gebeurt omdat de syntax bijzonderheden beiden in de queries, die worden uitgevoerd voor een directe connectie met de server door middel van ADO en in SQL queries, uitgevoerd in de Query Analyzer omgeving dat wordt geleverd met de MS SQL Server (het gebruik van “:”, het Go commando, etc.). De eerste manier is betrouwbaarder en de tweede manier, die is gemakkelijker.

Converteren van gegevens naar scripts en het opslaan naar harde schijf

  1. 1. Opgeslagen gegevens mapping

    Als u gekozen hebt om gegevens op schijf op te slaan, dan zal de Recovery Toolbox for SQL Server een subdirectory aanmaken, die de naam van het bron MDF bestand zal omvatten, en deze subdirectory wordt in de gebruiker-gedefinieerde map aangemaakt en alle scripts zullen daar geplaatst worden. Alle scripts krijgen namen door middel van een regel, namen bestaan uit een word en een getal. Het woord geeft de rol aan van het script, het getal geeft het nummer aan. Er zijn vele script-types, bijvoorbeeld:

    • Types*.sql - scripts zullen datatypes aanmaken, gedefinieerd door gebruikers.
    • Tables*.sql - scripts zal tabellen aanmaken.
    • Indexes*.sql - scripts zullen primaire sleutels en indexen aanmaken.
    • ForeignKeys*.sql - scripts zullen vreemde sleutels aanmaken.
    • Procedure*.sql - scripts zullen opgeslagen procedures aanmaken.
    • Function*.sql - scripts zullen functies aanmaken, gedefinieerd door gebruikers.
    • View*.sql - scripts zullen views aanmaken.
    • Triggers*.sql - scripts zullen triggers aanmaken.
    • Data*.sql - scripts zullen gegevens in tabellen invoegen.

    Het script volgnummer omvat geen bruikbare gegevens, het verwijst niet naar een script-uitvoervolgorde of enige andere informatie. Deze getallen worden alleen gebruikt om gegevens te splitsen en het op te slaan in een variëteit van kleine documenten in plaats van een groot bestand. Gebruikers kunnen de maximum bestandsgrootte definiëren met een SQL script. Temeer, gebruikers dienen notitie te nemen van de nummering van de databestanden. Het moet opgemerkt worden, dat ieder bestand van het datatype gegevens kan bevatten voor slechts een tabel. Bestanden met volgnummers bevatten alle gegevens voor iedere tabel.

    Noot: Als er getallen missen voor sommige bestanden, dan betekent het dat sommige tabellen geen gegevens bevatten.
  2. 2. Script uitvoer volgorde

    In dit plaatje kunt u de aanbevolen volgorde van scriptuitvoer zien:

    De script-uitvoervolgorde hangt af van de bestaande beperkingen voor bestaande gegevens en structuren van de tabel. Let alstublieft op bij deze factoren:

    1. Specificeer alstublieft de bijbehorende primaire sleutel, als u een twee sleutel wil aanmaken. Ten gevolge van dit feit, worden deze verrichtingen opgeslagen in verschillende bestanden, die in deze volgorde gestart moeten worden.
    2. Voor de creatie van indexen en secundaire sleutels, worden de tabellen gevuld. Dit is verplicht, omdat een referentiele integriteitscontrole wordt verricht, wanneer een tabel met een gedefinieerde secundaire sleutel wordt gevuld. Wanneer tabellen met secundaire sleutels worden gevuld voor tabellen met corresponderende primaire sleutels, dan ontstaat er een fout. Voorts kenmerkt deze methode een andere bijzonderheid. Als herstelde gegevens conflicteert met de primaire sleutel, unieke indexen, etc., dan zal de tabel in dit geval toch met gegevens gevuld worden, maar beperkingen zullen niet aangemaakt worden (index, primaire sleutel, etc.). Als gebruikers een ander gedrag vereisen, dan kunnen ze zelf een script-uitvoervolgorde selecteren.
    3. Procedures, Functions, Views en Triggers object creatie in een database heeft wat moeilijkheden, omdat deze objecten verfijnde en netelige afhankelijkheden kunnen hebben. Procedures kunnen refereren aan andere Procedures, Views kunnen refereren aan Functies, Triggers kunnen refereren aan alle objecten. Dat is waarom een programma niet kan helpen om de verwarring op te lossen. Gebruikers moeten alle afhankelijkheden handmatig vinden en de SQL scripts in de vereiste volgorde gebruiken. Een andere mogelijkheid bestaat uit het meerdere malen uitvoeren van alle scripts in deze groep, totdat alle error messages verdwijnen.
  3. 3. Install.bat file

    Het install.bat bestand is gecreëerd voor de automatische uitvoering van alle scripts. Dit bestand voert alle scripts uit, die eerder door de tool werden opgeslagen. De volgorde van de uitvoering van de scripts zal hetzelfde zijn, als van toepassing op de database. Dit batch bestand vereist dat de isqlw utility wordt geïnstalleerd, het is deel van de client van MS SQL Server. Specificeer a.u.b. de Server name, Database name, Username en Password parameters voor het bestand install.bat op de commandoregel. Bijvoorbeeld: install.bat SQLServer SQLDatabase SQLUser SQLUserPassword

    Let op:
    1. Parameters moeten gescheiden worden met een spatie. Als een parameter zelf een spatie bevat, dan zou u het moeten omvatten met dubbele aanhalingstekens.
    2. De parametervolgorde kan niet aangepast worden.
    3. Als het install.bat bestand uitgevoerd wordt zonder parameters, dan kunt u een korte handleiding inzien, hoe dit bestand te starten.
  4. 4. InstallTrusted.bat

    Als u wilt inloggen op Microsoft SQL Server via uw Windows-account, kunt u het bestand InstallTrusted.bat gebruiken. Het bestand InstallTrusted.bat file heeft twee parameters: Server name, Database name.

    Voorbeeld van gebruik: installtrusted.bat SQLServer SQLDatabase. U vindt meer informatie over inloggen via uw Windows-account hier: https://docs.microsoft.com/nl-nl/sql/relational-databases/security/authentication-access/principals-database-engine?view=sql-server-2017