Announcement

Collapse
No announcement yet.

Datenbankanbindung (Design)

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

  • Datenbankanbindung (Design)

    Hallo,

    ich plane derzeit in Verwaltungsprogramm (Multi-User).
    Datenbank: MS-SQL 2000 auf einem Server.
    IDE: Delphi 2005 Prof.
    Two-Tier-Architektur.
    Einsatz: Internes Netzwerk, keine Inet-Anbindung.

    Meine Fragen sind wie folgt:
    - Welche Komponenten eignen sich am Besten für die Anbindung
    an die MS-SQL Datenbank.
    - Ist ein Client- oder Server-Cursor zu empfehlen.
    - Für Performance-Hinweise wäre ich dankbar.

    Einen kleinen Kommentar am Rande:
    Ich habe das ganze bis jetzt mit Client-Cursor und den dbGO-Komponenten angefangen. Allerdings stieß ich auf das Problem, dass die bequeme Navigation über GotoBookmark über TADOQuery ein Resync aufruft und somit die Daten mit der DB abgleicht. Ich möchte aber, dass die Daten erst beim Schließen eines Moduls per Transaktionskontrolle in der DB gespeichert werden.
    Ich denke ich hab da ne Kleinigkeit übersehen, evtl. könnt ihr mir Empfehlungen machen, wie ich das am Besten realisiere.

    Danke schon mal im Vorraus.

  • #2
    > Welche Komponenten eignen sich am Besten für die Anbindung an die MS-SQL Datenbank.

    Wenn 100% Performance benötigt wird entweder direkt ADO (ohne AdoExpress/dbGo) oder probier mal die <a href="http://crlab.com/sdac/">Core Labs-Komponenten</a> aus.

    > Ist ein Client- oder Server-Cursor zu empfehlen.

    Fast immer Client-Seitiger Curser. Du entlastest die DB.

    > Für Performance-Hinweise wäre ich dankbar.

    Bester Performance SP's, ansonsten Prepared Statements (wenn Öfters verwendet werden kann)

    Comment


    • #3
      Danke für die Antwort.
      Für die Core Labs-Komponenten hab ich leider kein Geld.. derzeit.

      SP's: Ist die Performance-Steigerung im Gegensatz zur Clientseitigen aufrufe der SQL-Statements wirklich soviel besser?

      Was sind Prepared Statements?
      //Edit: Kann es sein das damit z.B. das Prepare von TADOQuery gemeint ist?
      --

      Ich komm mir grad wie n Neuling vor...

      Ahja, noch ne Frage:
      Unterstützt MS-SQL eigentlich Datensatz-Locking?

      Fragen über Fragen...
      Man muss verzeihen, ich hab mich früher mehr mit Diagnosesoftware beschäftigt.

      Vielleicht kennt ihr ja noch gute Quellen, Bücher zu diesen Themen? Ich gehe mal stark davon aus.

      Danke im Vorraus

      Comment


      • #4
        > SP's: Ist die Performance-Steigerung im Gegensatz zur Clientseitigen aufrufe der SQL-Statements wirklich soviel besser?

        Ja. Da das SQL-Statement nicht geparst werden muss und auch kein Ausführungsplan erstellt werden muss.

        > Was sind Prepared Statements?
        > Edit: Kann es sein das damit z.B. das Prepare von TADOQuery gemeint ist?

        Genau. Aber bringt nur was wenn das prepared statement mehr als einmal verwendet wird.

        > Unterstützt MS-SQL eigentlich Datensatz-Locking?

        AFAIK (bis zur 2000er-Version) nicht auf einzelnen Records sonder nur auf Pages (u.U. mehrere Records

        Comment


        • #5
          Danke nochmals für die guten Tips.
          Kannst du mir auch eventuell Links bzw. Nachschlagewerke empfehlen

          Comment


          • #6
            > Kannst du mir auch eventuell Links bzw. Nachschlagewerke empfehlen?

            Leider nein. Grundlagen hab ich im Studium erlernt und der Rest waren Erfahrungen. Wenn es nur der MS-SQL-Server ist kann Du ja mal das DB-Buch von A. Kosch anschauen

            Comment

            Working...
            X