Avatar billede netro Nybegynder
20. oktober 2004 - 23:30 Der er 9 kommentarer og
1 løsning

Extract datastruktur og tabeller

Hvordan findes alle SQL-sætninger, der er brugt til at oprette en database, tabeller og data? Jeg kunne nemlig godt tænke mig at have mulighed for at eksportere det hele via SQL til en tekstfil og også kunne genindlæse det.

Jeg kan se, at fx. IBConsole har en Metadata- og Extract-funktion. Hvis I kender til MySQL, vil I vide, at den har nogle gode indbyggede funktioner til netop dette, hvilket jeg også håber, at IB har.
Avatar billede pellelil Nybegynder
21. oktober 2004 - 08:46 #1
Det er ikke "databasen" der har "nogle gode indbyggede funktioner", men derimod de værktøjer man bruger. En interbase database indeholder en række system tabeller der indeholder hele databasens opbygning, og det du har brug for er således et værktøj der kan læse denne opbygning og trække den ud/vise den som SQL-sætninger.

IBConsole kan bruges er til at få lange n..... af, når man skal lave noget der bare er lidt mere avanceret end at tilføje et felt til en bestående database. Personligt bruger jeg (betalings programmet) "IB/FB Manager" (http://ems-hitech.com/ibmanager/) og der findes ligeledes et par alternativer der henholdvis hedder "IB Expert" (http://www.ibexpert.com/) og "IB Access" (http://www.ibaccess.org/). Sidstnævnte er gratis, og så vidt jeg lige husker det kan "Ib Expert" hentes i en begrænset (gratis så længde det er til privat brug) version.
Avatar billede netro Nybegynder
21. oktober 2004 - 12:06 #2
Okay, så det er altså ikke muligt at tage backup via ren SQL?
Avatar billede pellelil Nybegynder
21. oktober 2004 - 12:09 #3
Hvor kom "backup" lige ind i billedet? Backup af InterBase/FireBird databaser foretages normalt med GBAK (kommandolinie) værktøjet !?
Avatar billede netro Nybegynder
21. oktober 2004 - 12:15 #4
Det var min idé med at eksportere det til en tekstfil. Ligesom det kan gøres i flere andre databaser.
Avatar billede pellelil Nybegynder
21. oktober 2004 - 12:22 #5
Som sagt indeholder "databasen" (database filen) ikke de SQL sætninger der skal til for at opbygge databasen, og dens indhold - men opbygningen findes som sagt i databasens system tabeller. Du kan ikke (mig bekendt) direkte trække disse metadata ud som SQL kald (til en tekstfil), men mindre du har et af før nævnte utilites.

Når/hvis du får trukket dine metadata ud kan du bruge ISQL (kommandolinie værktøj der følger med InterBase/FireBird) til at opbygge databasen på andre maskiner. Jeg har f.eks. installeret versionsstyringsværktøjet FreeVCS hvor man netop får 2 SQL (tekstfiler) der dels indeholder databasens opbygning og dels nogle "stamdata" (her anvendes ISQL).

Hvis målet er at flytte databasen (opbygning og data) fra en maskine til en anden vil jeg helt klart foreslå at du anvender GBAK hvor du på den ene maskine foretager en backup og på en anden en restore.
Avatar billede netro Nybegynder
21. oktober 2004 - 12:28 #6
Er det egentlig muligt blot at kopiere GDB-filen og anvende den som backup?
Avatar billede pellelil Nybegynder
21. oktober 2004 - 12:38 #7
Ja og nej. I 99% af tilfældene kan man blot kopiere en GDB fil fra en maskine til en anden men vil du være 100% sikker så brug GBAK.

Backup:
GBAK -B -T -V Database.gdb Backup.gbk -USER brugernavn -PASSWORD kodeord

Restore:
GBAK -R -V backup.gbk -USER brugernavn -PASSWORD kodeord
Avatar billede netro Nybegynder
21. oktober 2004 - 13:29 #8
Okay, jeg siger tak for hjælpen!
Avatar billede pellelil Nybegynder
21. oktober 2004 - 14:41 #9
Det var så lidt og så lad mig lige "rette fejlen". I restore kommandoen skal man selvfølgelig også angive navnet på den database (som backupen skal indlæses til):

GBAK -R -V backup.gbk database.gdb -USER brugernavn -PASSWORD kodeord

...og så må der ikke forefindes en "database.gdb" fil inden man forsøger at indlæse backupen.
Avatar billede netro Nybegynder
21. oktober 2004 - 14:53 #10
Det giver mening :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester