AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Struktur in eine leere Datenbank einrichten mit ADO?
Thema durchsuchen
Ansicht
Themen-Optionen

Struktur in eine leere Datenbank einrichten mit ADO?

Ein Thema von SearchBot · begonnen am 19. Jun 2018 · letzter Beitrag vom 20. Jun 2018
Antwort Antwort
Seite 1 von 2  1 2      
SearchBot

Registriert seit: 27. Jun 2004
Ort: N-W vom Bodensee
317 Beiträge
 
Delphi 12 Athens
 
#1

Struktur in eine leere Datenbank einrichten mit ADO?

  Alt 19. Jun 2018, 15:19
Datenbank: MS SQL Express • Version: 2014 • Zugriff über: ADO
Hallo

Ich bin neu mit Datenbanken. Bisher habe ich alles mit StringGrids und StringLists lösen können.
Mein Kollege hat auf dem Server eine SQLexpress 2014-Datenbank erstellt und ich habe nun die Aufgabe, dort komplexe Daten abzulegen (zunächst die bisher erzeugten StringGrid-Dateien).

Ich habe hier nur die Delphi Berlin Professional-Version, daher kann ich scheinbar nicht mit FireDAC auf die MSSQL zurgreifen, weil mir FireDAC.Phys.MSSQL.TFDPhysMSSQLDriverLink fehlt...

Zwischenzeitlich habe ich ja schon einiges gelesen und konzentriere mich auf ADO.
So habe ich mit TADOConnection.ConnectionString das Ding ohne Fehlermeldung auf Connected:=true gesetzt.
("Initial Catalog=XYZ" ist der Beispiel-Datenbankname)

Jetzt weiß ich aber nicht weiter - die Databank ist ja komplett leer.
Wie bringe ich da jetzt die Struktur rein (also die Datenfelder und ihre Typen drinnen anlegen (die ich noch nicht ganz fertiggedacht habe))?

Kann die Struktur zur Entwurfszeit schon in der IDE generiert werden oder nur zur Laufzeit?
Wie kann ich dann diese Struktur überprüfen (bin es gewohnt, die erzeugte Datei anzusehen - bei einer DB ist das ja eher nicht möglich)?

Ich vermute, daß ich da was mit TADODataSet machen kann?
Dort finde ich FieldDefs und dort wieder ChildDefs und die kann ich weiter zur Entwurfszeit zusammenklicken - aber ist das der richtige Weg, werden die dann so automatisch gespeichert...?
Oder muss ich das mit TADOCommand.Commandtext und SQL-Befehlen machen?
  Mit Zitat antworten Zitat
TigerLilly

Registriert seit: 24. Mai 2017
Ort: Wien, Österreich
1.211 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Struktur in eine leere Datenbank einrichten mit ADO?

  Alt 19. Jun 2018, 15:41
Ja, da musst du mit TADOCommand und SQL Befehlen arbeiten:
https://docs.microsoft.com/en-us/sql...ql-server-2017

Oder du erstellst die Tabellen mit MSSQL Management Studio und benutzt sie dann in deinen TADODataSets.

Mischform. Du nimmst das MSSQL Management Studio, erstellst deine Tabellen, lässt dir ein Script erstellen + das führen dann deine TADOCommands aus. Vorteil: Du kannst die DB so jederzeit neu erstellen lassen.
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.116 Beiträge
 
Delphi 12 Athens
 
#3

AW: Struktur in eine leere Datenbank einrichten mit ADO?

  Alt 20. Jun 2018, 08:52
Zitat:
Delphi Berlin Professional-Version
Damit ist nur lokale DB, kein C/S mit FD möglich
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer
Online

Registriert seit: 13. Aug 2002
17.201 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Struktur in eine leere Datenbank einrichten mit ADO?

  Alt 20. Jun 2018, 09:13
Zitat:
Delphi Berlin Professional-Version
Damit ist nur lokale DB, kein C/S mit FD möglich
Macht doch eh schon ADO

Zitat:
Zwischenzeitlich habe ich ja schon einiges gelesen und konzentriere mich auf ADO.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#5

AW: Struktur in eine leere Datenbank einrichten mit ADO?

  Alt 20. Jun 2018, 09:31
Moin...
Zitat:
Zwischenzeitlich habe ich ja schon einiges gelesen und konzentriere mich auf ADO.
...mit den UniDac fährst du mit Sicherheit besser. Das Geld ist die beste Investion ever. ADO hat so seine Eigenheiten und Bugs...Wenn dann richtig.

Zum Thema:
wie schon erwähnt: Die ganze Datenbankstruktur als SQL Script ablegen...für jedes DBMS ein separates.

Geändert von haentschman (20. Jun 2018 um 09:50 Uhr)
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Struktur in eine leere Datenbank einrichten mit ADO?

  Alt 20. Jun 2018, 09:53
Hallo,
wir erzeugen nicht vorhandene Tabellen direkt über SQL.
Create Table X

usw.

Wir haben aber nie eine komplett leere DB, sondern immer einen aktuellen Stand,
den wir bei einer Neuinstallation mit ausliefern.
Sobald aber das nächste Programm-Update ansteht, sind wieder Alter Table Add - Befehle dabei, falls nötig.
Heiko
  Mit Zitat antworten Zitat
rokli

Registriert seit: 21. Mär 2009
Ort: Rödinghausen
301 Beiträge
 
Delphi 10.4 Sydney
 
#7

AW: Struktur in eine leere Datenbank einrichten mit ADO?

  Alt 20. Jun 2018, 12:55
Hallo,

natürlich lässt sich die ganze SQL-DDL (Data Definition Language) in Delphi programmieren ... ist sicherlich eine gute Übung; aber ...

Warum verwendest Du dafür nicht die von Microsoft bereitgestellten Tools wie das Microsoft SQL Server Management Studio, was für diese Aufgaben gebaut wurde ... und darüber hinaus auch für die Kontrolle des SQL Server, fürs Backup und vieles mehr gedacht ist?? https://docs.microsoft.com/de-de/sql...ql-server-2017

Und wenn Du MS nicht magst, kannst Du z. B. den DBeaver verwenden https://dbeaver.io/

Da gibts natürlich noch unzählige andere gute und nicht so gute Tools im Netz, die Dir die Verwaltung des DB Server abnehmen, bzw. unterstützen.

Gruß
Rolf
wenn nicht anders angegeben, schreibe ich zu D7, XE2 und MS SQL - ansonsten fragen Sie ihren Administrator oder einen Operator. Update 06/2020: Delphi 10.4 Sydney
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#8

AW: Struktur in eine leere Datenbank einrichten mit ADO?

  Alt 20. Jun 2018, 13:14
Zitat:
natürlich lässt sich die ganze SQL-DDL (Data Definition Language) in Delphi programmieren ... ist sicherlich eine gute Übung; aber ...
...wir meinen z.B. mit dem Management Studio die Datenbank designen und dann das SQL Script exportieren. Dann kann man die Datenbank programmtechnisch einfach erzeugen.
  Mit Zitat antworten Zitat
rokli

Registriert seit: 21. Mär 2009
Ort: Rödinghausen
301 Beiträge
 
Delphi 10.4 Sydney
 
#9

AW: Struktur in eine leere Datenbank einrichten mit ADO?

  Alt 20. Jun 2018, 13:21
haentschman, dafür bekommst Du ein (Daumenhoch gibts ja leider nicht)
Rolf
wenn nicht anders angegeben, schreibe ich zu D7, XE2 und MS SQL - ansonsten fragen Sie ihren Administrator oder einen Operator. Update 06/2020: Delphi 10.4 Sydney
  Mit Zitat antworten Zitat
SearchBot

Registriert seit: 27. Jun 2004
Ort: N-W vom Bodensee
317 Beiträge
 
Delphi 12 Athens
 
#10

AW: Struktur in eine leere Datenbank einrichten mit ADO?

  Alt 20. Jun 2018, 13:23
Hallo und danke für den regen Zuspruch

Dieses Server Management Studio ist ja toll, danke für diesen Tipp.
Weiß zwar noch nicht, wie ich da jetzt meine Datenstruktur hineinbekomme, aber habs ja auch erst installiert
Zum späteren Nachsehen, wie wo was gespeichert wird, ist es für mich sicher das optimale Tool.

Und wie kann ich dann diesen Script generieren lassen ("Die ganze Datenbankstruktur als SQL Script ablegen.")?

Im SMS, dort im OI-Baum steht "Tabellen" und wie ich da drauf gehe, geht ein Editor auf, wo ich den "Spaltennamen", "Datentyp" und "NULL-Werte zulassen" eintragen kann - ich vermute mal, das ist das, was ich gesucht habe. Jetzt googel ich mir noch die Datentypen zusammen...

Wie ist das dann mit Delphi, wenn ich die ADO-Connection aktiviere, liest es dann die Struktur automatisch oder muss ich den ADO-Komponenten nochmal alles erklären?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:19 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz