Announcement

Collapse
No announcement yet.

SQL Script erstellung inkusive Daten der Tabelle

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • SQL Script erstellung inkusive Daten der Tabelle

    Ich programmiere eine Datenbank mit SQL Server 2000

    Eine Generierung eines Scriptes mit der ich eine die angewählte Tabelle erstellen kann ist mir bekannt (Alle Task, SQL Script generieren)

    Wie kann ich automatisch ein SQL Script als xxx.sql File generieren welches nicht nur die Tabellenerstellung generiert sondern auch die vorhandenen Daten in der Quelltabelle als INSERT Kommandos generiert.

    oder ist das gar nicht möglich, aber ich meine es schonmal gesehen zu haben

  • #2
    Hallo,

    dieser Komfort steht innerhalb eines Datenbankprojekts von Visual Studio .NET 2003 zur Verfügung. Im Server Explorer wird über den Menüpunkt Generate Create Script zuerst die Struktur exportiert, um danach über den Menüpunkt Export Data... die .dat-Dateien mit den Inhalt der Datensätzen anzulegen. Wird dann im Solution Explorer der Menüpunkt Create Command File ausgewählt, baut Visual Studio ein CMD-Script zusammen, dass zuerst die Tabellenstruktur anlegt und danach über bcp.exe die Datensätze aus den .dat-Dateien importiert.

    Ein Beispiel sieht dann so aus:

    Code:
    @echo off
    REM: Command File Created by Microsoft Visual Database Tools
    REM: Date Generated: 09.10.2002
    REM: Authentication type: Windows NT
    REM: Usage: CommandFilename [Server] [Database]
    
    if '%1' == '' goto usage
    if '%2' == '' goto usage
    
    if '%1' == '/?' goto usage
    if '%1' == '-?' goto usage
    if '%1' == '?' goto usage
    if '%1' == '/help' goto usage
    
    osql -S %1 -d %2 -E -b -i "Create Scripts\dbo.TblNew.tab"
    if %ERRORLEVEL% NEQ 0 goto errors
    bcp "%2.dbo.TblNew" in "Create Scripts\dbo.TblNew.dat" -S %1 -T -k -n -q
    if %ERRORLEVEL% NEQ 0 goto errors
    osql -S %1 -d %2 -E -b -i "Create Scripts\dbo.TblNew.kci"
    if %ERRORLEVEL% NEQ 0 goto errors
    osql -S %1 -d %2 -E -b -i "Create Scripts\dbo.TblNew.fky"
    if %ERRORLEVEL% NEQ 0 goto errors
    osql -S %1 -d %2 -E -b -i "Create Scripts\dbo.TblNew.ext"
    if %ERRORLEVEL% NEQ 0 goto errors
    
    goto finish
    
    REM: How to use screen
    :usage
    echo.
    echo Usage: MyScript Server Database
    echo Server: the name of the target SQL Server
    echo Database: the name of the target database
    echo.
    echo Example: MyScript.cmd MainServer MainDatabase
    echo.
    echo.
    goto done
    
    REM: error handler
    :errors
    echo.
    echo WARNING! Error(s) were detected!
    echo --------------------------------
    echo Please evaluate the situation and, if needed,
    echo restart this command file. You may need to
    echo supply command parameters when executing
    echo this command file.
    echo.
    pause
    goto done
    
    REM: finished execution
    :finish
    echo.
    echo Script execution is complete!
    :done
    @echo on
    Zuletzt editiert von Andreas Kosch; 09.03.2007, 08:11.

    Comment


    • #3
      Hallo!

      Vielleicht das?!?:
      http://www.itrain.de/knowhow/sql/tsq.../genInsert.asp

      Als Tipp:
      http://www.berndjungbluth.de/sqlfaq/

      Hilft ab und an mal wirklich weiter!

      BYE BERND

      Comment


      • #4
        Danke für die Tipps

        Danke für die Tipps, Ich habe es mit den Datenbank Projekt in Visual 2003 gelöst.

        Comment

        Working...
        X