![]() |
SQL Server DB aus Delphi heraus erstellen?
Hallo DP'ler,
diesmal hab ich ein etwas größeres Problem! Ich möchte mein Programm auf eine SQL Server 2000 bzw. MSDE2000 -DB umstellen! Ich hab mir jetzt meine DB in Access zusammengebastelt und möchte Access nun dazu bewegen, dass er mir eine *.sql-File ausspuckt, welche ich dann meinem Programm beilegen kann! Wie macht man das in Access? Beim Kunden wird später nicht der SQL Server, sondern die MSDE2000 laufen! Dort gibt es kein Enterprise Manager mit dem die DB manuell erstellt werden kann. Wie kann ich die DB entsprechend der SQL-Datei auf dem Kundenrechner erstellen lassen? (Vielleicht kennt ja jemand ne gute Seite zu dem Thema!) Wichtig ist, dass das alles für den Kunden automatisiert ablaufen muss, da ich davon ausgehen muss, dass der Kunde den rehcner gerade mal anmachen kann! :coder: Ich hab leider überhaupt keine Ahnung von der Materie und hab bisher auch keine gute Literatur dazu gefunden! Ok, vielen Dank schonmal! Schätze mal, dass ich in den nächsten tagen noch öfter eure Hilfe brauch! :roll: MfG Delphi-Coder |
Re: SQL Server DB aus Delphi heraus erstellen?
Hallo Delphi-Coder,
ich vermute Access kann Dir nicht die Create-Skripte für die einzelnen Tabellen anzeigen. Wenn Du die Möglichkeit hast, die SQL-Server-DB nativ über die BDE (Alias) anzusprechen, dann kannst Du Dir diese Skripte im SQL-Explorer anschauen. Diese solltest Du dann mittels einer Query an die Datenbank schicken. Ob das allerdings so funktioniert kann ich Dir nicht sagen! |
Re: SQL Server DB aus Delphi heraus erstellen?
Danke für den Tipp! Ich werd's mal so versuchen!
|
Re: SQL Server DB aus Delphi heraus erstellen?
Für die ersten Schritte hilft das ja vielleicht:
Datenbank auf SQL-Server erzeugen:
SQL-Code:
Tabelle AdrTyp anlegen
CREATE DATABASE DieDatenbank
ON ( NAME = 'DieDatenbank_Data', -- <-- da fehlten die Anführungszeichen... FILENAME = 'C:\Programme\Microsoft SQL Server\MSSQL\Data\DieDatenbank_Data.mdf', SIZE = 10MB, -- nach Belieben anpassen MAXSIZE = 100MB, FILEGROWTH = 5MB ) LOG ON ( NAME = 'DieDatenbank_Log', FILENAME = 'C:\Programme\Microsoft SQL Server\MSSQL\Data\DieDatenbank_Log.ldf', SIZE = 5MB, MAXSIZE = 50MB, FILEGROWTH = 5MB ) GO
SQL-Code:
Tabelle Adressen anlegen:
create table ADRTYP
( idAdrTyp int identity(1,1) not null, -- erzeugt selbst inkrementierendes Feld TYP varchar(35) not null, KurzTyp varchar(15) null , constraint pk_adrtyp primary key (idAdrTyp) -- legt idAdrTyp als Primärschlüsselfeld fest ) go
SQL-Code:
Einen Index für Feld 'PLZ' erzeugen:
create table ADRESSEN
( IDADRESSEN int identity(1,1) not null, idAdrTyp int not null, STRASSE varchar(35) null , HAUSNR varchar(9) null , PLZ varchar(5) null , ORT varchar(35) null , constraint pk_adressen primary key (IDADRESSEN) ) go
SQL-Code:
Nun noch die Referenz von Adressen auf AdrTyp erzeugen:
create index X_ADR_PLZ on ADRESSEN (PLZ) -- erzeugt Index für Feld 'PLZ'
go
SQL-Code:
alter table ADRESSEN
add constraint fk1_adressen foreign key (idAdrTyp) references ADRTYP (idAdrTyp) go |
Re: SQL Server DB aus Delphi heraus erstellen?
Hi Leuselator,
danke für deine Hilfe! Wenn ich aber die SQL-Befehle in eine Datei schreibe und diese dann z. Bsp. mit ADOQuery1.SQL.LoadFromFile(Dateiname) und zur DB schicke, zeigt er einen Fehler bei jedem "GO"-Befehl an! Woran könnte das liegen? Bis denne! Delphi-Coder |
Re: SQL Server DB aus Delphi heraus erstellen?
Liste der Anhänge anzeigen (Anzahl: 1)
Mein Fehler wahrscheinlich...
Ich arbeite diese Skripte immer im MS-Queryanalyser ab. Der parst wahrscheinlich den Code nach den GO's durch und setzt bei einem solchen ein Commit oder execute ab. Ihr müsstet also das ganze Häppchenweise an den Server schicken. Hab da schnell was gebastelt, was Ihr als Grundlage nehmen könnt. Es verwendet BDE - ist aber leicht auf ADO umstellbar: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:13 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz