Wizards & Builders GmbH Client/Server-Programmierung Erstellung von Client/Server- Datenbankapplikationen unter Microsoft Visual FoxPro.

Slides:



Advertisements
Ähnliche Präsentationen
E-Solutions mySchoeller.com for Felix Schoeller Imaging
Advertisements

Transaction Synchronization for XML Data in Client Server Web Applications Stefan Böttcher & Adelhard Türling Universität Paderborn.
PL/SQL - Kurze Einführung -.
2. DB-API: Programmierschnittstellen zu Datenbanken
1 Sascha Michael Competence Manager Integration Umsetzung einer SOA-basierten Retail Plattform.
Windows Vista für Entwickler
MySQL.
Objektrelationales Mapping mit JPA Entity Mapping Jonas Bandi Simon Martinelli.
SQL als Abfragesprache
IS: Datenbanken, © Till Hänisch 2000 CREATE TABLE Syntax: CREATE TABLE name ( coldef [, coldef] [, tableconstraints] ) coldef := name type [länge], [[NOT]NULL],
Dynamische Webseiten Java servlets.
Open Database Connectivity (ODBC). © Prof. T. Kudraß, HTWK Leipzig Open Database Connectivity (ODBC) Idee: – API für eine DBMS, das ein Call-Level-Interface.
PL/SQL - Programmierung von Programmeinheiten. © Prof. T. Kudraß, HTWK Leipzig Gespeicherte Prozeduren – Eine Prozedur ist ein benannter PL/SQL Block,
Oracle interMedia Audio Vortrag für das Seminar Oracle Zusatzoptionen Chris Haußmann.
JDBC -Java Database Connectivity-. 15./22. April 2004JDBC2 JDBC.... verbindet Java-Programme mit SQL-basierten Datenbanken.. liefert eine generische SQL-API.
1 Datenintegrität Statische Bedingung (jeder Zustand) Dynamische Bedingung (bei Zustandsänderung) Bisher: Definition eines Schlüssels 1:N - Beziehung Angabe.
1 Kapitel 8: Datenintegrität. 2 Datenintegrität Statische Bedingung (jeder Zustand) Dynamische Bedingung (bei Zustandsänderung) Bisher: Definition eines.
2.2 Definition eines Datenbankschemas (SQL-DDL)
Verteilte Transaktionen mit EJBs und JDBC 2.0
Grundlagen der Tabellen von FoxPro/Windows und Microsoft Visual FoxPro
Client / Server Architektur
Wizards & Builders GmbH Offline-Views in VFP Arbeiten mit Offline-Views von Datenbanken unter Microsoft Visual FoxPro.
Wizards & Builders GmbH ActiveX-Controls Verwendung und Einsatz von ActiveX-Controls unter Microsoft Visual FoxPro.
Wizards & Builders GmbH Fertigkomponenten Fertige Komponenten in Component Gallery und Solutions-Beispielen Microsoft Visual FoxPro.
Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro.
Wizards & Builders GmbH Microsoft Titel Microsoft-Titel für Entwickler und Softwarehäuser.
Wizards & Builders GmbH Klassenbibliotheken Arbeiten mit Klassenbibliotheken in Microsoft Visual FoxPro.
Wizards & Builders GmbH Die Benutzeroberfläche Interaktives Arbeiten mit den Werkzeugen/Assistenten von Microsoft Visual FoxPro.
Wizards & Builders GmbH Programmierstil Hinweise zum Programmierstil unter Microsoft Visual FoxPro.
Wizards & Builders GmbH Arbeiten mit CSV-Listen Arbeiten mit CSV-Listen unter Microsoft Visual FoxPro.
Wizards & Builders GmbH OOP in der Praxis Die wichtigsten Befehle für OO-Programmierung mit Microsoft Visual FoxPro.
Wizards & Builders GmbH Übersicht Schulung Übersicht über Schulung für Entwickler unter Microsoft Visual FoxPro.
Wizards & Builders GmbH Schulungsmaterial Material zu Programmierung und Datenbankhandling unter Microsoft Visual FoxPro.
Wizards & Builders GmbH Distribution von Applikationen Distribution und Installation unter Microsoft Visual FoxPro.
Wizards & Builders GmbH Modularisierung von SW Modularisierung von Anwendungen mit Microsoft Visual FoxPro.
SQL in Visual FoxPro. © 1999 TMN-Systemberatung GmbH SQL Historie n SQL - Structured Query Language n In den 70er Jahren von IBM entwickelt n 1986 zum.
Neue DBF und DBC Befehle in Visual FoxPro
Lokal Views (Ansichten) in Visual FoxPro
VFX 10.0 Visual Extend Datenzugriff
Uwe Habermann WPF Avalon Formulare aus VFP verwenden Venelina Jordanova
Visual Extend Features für Entwickler deutschsprachige FoxPro User Group Uwe Habermann VFX 05 D.
Version 5. Internal use only Network Support Center All rights reserved, property and © CAD-Computer GmbH CFR 11, ERES Electronic Record Electronic.
Server.
Vergleich der verschiedenen kommerziellen Datenbanksysteme
Softwareentwicklung mit Oracle Lite & Delphi
FH-Hof Standard Query Language Richard Göbel. FH-Hof Geschichte der Sprache SQL System/R-Projekts von IBM zu Beginn der 70er Jahre: Entwicklung der Sprache.
© All rights reserved. Zend Technologies, Inc. Jan Burkl System Engineer, Zend Technologies Zend Server im Cluster.
Datenintegrität Integitätsbedingungen Schlüssel
ORMapper: NHibernate Henning Eiben
Entity Mapping Persistente Domänenmodelle mit JPA 2.0 und Bean Validation.
Advanced Mapping Persistente Domänenmodelle mit JPA 2.0 und Bean Validation.
Neno Loje Berater & MVP für Visual Studio ALM und TFS (ehemals VSTS) Hochqualitative Produkte mit Visual Studio & TFS 2010.
Dariusz Parys Developer Evangelist Microsoft Deutschland GmbH.
3/28/2017 8:11 PM Visual Studio Tools für Office { Rapid Application Development für Office } Jens Häupel Platform Strategy Manager Microsoft Deutschland.
XML IV: Cocoon 2.
Client Server Architektur
WS 2013/14 Datenbanksysteme Do 17:00 – 18:30 R Vorlesung #7 SQL (Teil 4)
Template v5 October 12, Copyright © Infor. All Rights Reserved.
Cyber-Security und Datenschutz in der Cloud Wie passt das zusammen?
Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik Web Application Engineering & Content Management.
Launch ON Global.vi System ID object name classname Services to suscribe Observer Control Ref vi-path Service name Step 1 : Objects register to the Global.vi´s,
SQL Server 2005 CLR Integration Sebastian Weber Microsoft Deutschland GmbH
1 Stammdaten-Export/Import Eindeutigkeitsproblem Beschreibung und vorgeschlagene Lösung
WS 2013/14 Datenbanksysteme Do 17:00 – 18:30 R Vorlesung #8 SQL (Teil 5)
11 Zugriffskontrolle (Access Control) Ziele Privilegien Rollen GRANT und REVOKE Befehl Privilegien Rollen GRANT und REVOKE Befehl.
WS 2014/15 Datenbanksysteme Do 17:00 – 18:30 R Vorlesung #9 SQL Zusammenfassung.
Datenbanken erstellen mit PostgreSQL
SQL Basics Schulung –
D-SQL Vom Datenbank-Container zur SQL Server-Datenbank
D-SQL SQLization – endlich Client/Server!
 Präsentation transkript:

Wizards & Builders GmbH Client/Server-Programmierung Erstellung von Client/Server- Datenbankapplikationen unter Microsoft Visual FoxPro

Wizards & Builders GmbH Diese Schulung dient der Einführung in die Client/Server-Programmierung mit Microsoft Visual FoxPro und Microsoft SQL Server

Wizards & Builders GmbH Themenübersicht Client/Server Client/Server Connections und Connections und Remote Views Remote Views SQL-Pass-Through SQL-Pass-Through MS SQL-Server MS SQL-Server Unterschiede zu Server-DB Unterschiede zu Server-DB Optimierung C/S Optimierung C/S The Red Classes The Red Classes

Wizards & Builders GmbH Client/Server Konzepte der Client/Server- Programmierung unter Microsoft Visual FoxPro

Wizards & Builders GmbH Definition Datenbank Logische Datenunabhängigkeit Logische Datenunabhängigkeit Physikalische Datenunabhängigkeit Physikalische Datenunabhängigkeit Prozedurale Schnittstellen Prozedurale Schnittstellen Effiziente Abarbeitung von Operationen Effiziente Abarbeitung von Operationen minimale Datenredundanz minimale Datenredundanz Datenintegrität Datenintegrität konkurrierender Datenzugriff konkurrierender Datenzugriff Datensicherheit Datensicherheit Datenschutz (Zugriffsschutz) Datenschutz (Zugriffsschutz)

Wizards & Builders GmbH Definition Client/Server Client/Server bedeutet: ein Zusammenspiel von mehreren Computern, mit der Verteilung der Aufgaben zwischen den Maschinen Der Server übernimmt Speicher und CPU intensive Aufgaben Der Server übernimmt Speicher und CPU intensive Aufgaben Der Client übernimmt Auswertungen und Präsentation Der Client übernimmt Auswertungen und Präsentation

Wizards & Builders GmbH Vorteile/Gründe Client/Server Geringere Hardwarekosten (statt Mainframe o.ä.) Geringere Hardwarekosten (statt Mainframe o.ä.) Geringere Entwicklungskosten (dito) Geringere Entwicklungskosten (dito) Integration mit PC Software Integration mit PC Software Skalierbarkeit von Architekturen (statt Multiuser) Skalierbarkeit von Architekturen (statt Multiuser) Datensicherheit (Mirroring, Backup) Datensicherheit (Mirroring, Backup) Geringere Belastung des Netzes Geringere Belastung des Netzes weil es der Chef/Kunde so will... (Marketing) weil es der Chef/Kunde so will... (Marketing)

Wizards & Builders GmbH Bewertung der Gründe Der Trend zu Client/Server kommt aus dem Bereich der Mainframes (Downsizing) Der Trend zu Client/Server kommt aus dem Bereich der Mainframes (Downsizing) Gründe für Upsizing: Gründe für Upsizing: Sicherheit der Daten Sicherheit der Daten Anwendungen in WANs, Anwendungen in WANs, sehr große Datenmengen (Gigabytes) sehr große Datenmengen (Gigabytes) der Wunsch des Kunden der Wunsch des Kunden

Wizards & Builders GmbH Architekturen Presentation Application Function Data Management Application Function Presentation Data Management Network Distributed Presentation Distributed Data Mgmt. Remote Data Mgmt. Distributed Function Remote Presentation

Wizards & Builders GmbH Visual FoxPro und SQL-Server Visual FoxPro arbeitet im Client/Server Bereich besonders gut mit SQL Server zusammen (Upsizing Wizard) - was aber nichts über die erreichbare Performance aussagen soll... Visual FoxPro arbeitet im Client/Server Bereich besonders gut mit SQL Server zusammen (Upsizing Wizard) - was aber nichts über die erreichbare Performance aussagen soll... Grundsätzlich sind fast alle hier vorgestellten Möglichkeiten auch mit anderen ODBC Datenquellen gegeben (in Abhängigkeit vom jeweiligen Treiber) Grundsätzlich sind fast alle hier vorgestellten Möglichkeiten auch mit anderen ODBC Datenquellen gegeben (in Abhängigkeit vom jeweiligen Treiber)

Wizards & Builders GmbH ODBC-Architektur Application ODBC driver Driver manager ODBC API ODBC SPI Network Network interface Database

Wizards & Builders GmbH Connections und Remote Views Interaktive und programmatische Definition von Connections/Remote Views

Wizards & Builders GmbH ODBC-Manager ODBC-Manager (Systemsteuerung) ODBC-Manager (Systemsteuerung) Installation der ODBC- Verbindung Installation der ODBC- Verbindung ggf. Network Lib ggf. Network Lib ggf. Trusted Conn. ggf. Trusted Conn. ggf. Database Name ggf. Database Name

Wizards & Builders GmbH Interaktive Definition Auswahl von Datasource Auswahl von Datasourceoder Definiton einer Connection Definiton einer Connection Auswahl Tabellen Auswahl Tabellen Definition von Remote Views Definition von Remote Views Zusatzeinstellungen für Remote Views (im Menü) Zusatzeinstellungen für Remote Views (im Menü) Wichtig: Vergabe von Parametern! Wichtig: Vergabe von Parametern!

Wizards & Builders GmbH Auswahl Datasource Anlegen / Öffnen Datenbank-container Anlegen / Öffnen Datenbank-container Auswahl Datasource Auswahl Datasourceoder Definition einer Connection Definition einer Connection

Wizards & Builders GmbH Definition Connection User/Pwd/Databas e User/Pwd/Databas e Aysnchron (?) Aysnchron (?) Endanwender- Warnungen (?) Endanwender- Warnungen (?) Transaktionen Transaktionen Paketgröße Paketgröße diverse Zeiten diverse Zeiten

Wizards & Builders GmbH Auswahl Tabellen Übersicht über Database Übersicht über Database Join auf dem Server (siehe ODBC-Join) Join auf dem Server (siehe ODBC-Join)

Wizards & Builders GmbH Definition Remote View (1) Komplett-download Komplett-download ohne Unterbrechung ohne Unterbrechung Parameter: Parameter: ? Abfrage Abfrage Variable Variable Property Property Wildcards Wildcards % _

Wizards & Builders GmbH Definition Remote View (2) Primärschlüssel Primärschlüssel Änderbare Felder Änderbare Felder Send SQL-Update Send SQL-Update SQL-Where: SQL-Where: Key Fields Key Fields Key & Updatable Key & Updatable Key & Modified Key & Modified Key & Timestamp (!) Key & Timestamp (!)

Wizards & Builders GmbH Zusatzparameter Remote View Share Connection Share Connection No. of Records to Fetch at a time No. of Records to Fetch at a time Maximum No. of Records to fetch Maximum No. of Records to fetch Use Memo when character field length > Use Memo when character field length > No. of Records to Batch Update No. of Records to Batch Update Fetch Memo Fetch Memo Include Memo fields in Where-Clause Include Memo fields in Where-Clause Precompile on Backend Server Precompile on Backend Server

Wizards & Builders GmbH Programmatisch Anlegen CREATE CONNECTION CREATE CONNECTION DATASOURCE sqlremote userid password DATASOURCE sqlremote userid password CREATE SQL VIEW REMOTE CREATE SQL VIEW REMOTE oder CONNECTION oder CONNECTION USE USE AGAIN(ggf. gleiche Parameter!) AGAIN(ggf. gleiche Parameter!) NOREQUERY(gleiche Daten) NOREQUERY(gleiche Daten) NODATA(keine Daten, nur Struktur) NODATA(keine Daten, nur Struktur)

Wizards & Builders GmbH SQL-Passthrough Direktzugriff auf SQL-Server- Datenbanken statt Verwendung von Remote Views in Microsoft Visual FoxPro

Wizards & Builders GmbH Unterschiede zwischen Remote View / SQL-PassThrough Remote View: VFP SQL-Select VFP SQL-Select Controlsource Controlsource Connection-Mgmt. Connection-Mgmt. Default-Update-Info Default-Update-Info Metadaten in DBC Metadaten in DBC Progressive Fetch Progressive FetchSQL-Passthrough: Native Server SQL Native Server SQL DDL-Zugriff DDL-Zugriff Multiple Result-Sets Multiple Result-Sets Transactions Transactions Non-Updatable Non-Updatable Cursorsetprop() Cursorsetprop()

Wizards & Builders GmbH Zugriff mit SQL-Passthrough Test der Connection (ODBC-Test) Test der Connection (ODBC-Test) *-- Verbindung herstellen Handle=SQLConnect(data, sa, pwd) *-- Ausführen Abfrage =SQLExec(Handle, SQL, cursor) *-- Arbeiten mit View (Update/Revert) =SQLDisconnect( Handle )

Wizards & Builders GmbH SQL-Connect / Metadata (1) SQLCONNECT( ) SQLCONNECT( ) SQLSTRINGCONNECT( ) SQLSTRINGCONNECT( ) SQLDISCONNECT( ) SQLDISCONNECT( ) SQLTABLES( * ) SQLTABLES( * ) SQLCOLUMNS( * ) SQLCOLUMNS( * )

Wizards & Builders GmbH SQL-Statements (2) SQLEXEC( * ) SQLEXEC( * ) SQLMORERESULTS( * ) SQLMORERESULTS( * ) SQLCANCEL( = )Abbruch SQLCANCEL( = )Abbruch SQLPREPARE( )Precompiling SQLPREPARE( )Precompiling SQLCOMMIT( )Commit Trans. SQLCOMMIT( )Commit Trans. SQLROLLBACK( )Cancel Trans. SQLROLLBACK( )Cancel Trans.

Wizards & Builders GmbH SQL-Statements (3) SQLEXEC( Handle, StoredProcedure) SQLEXEC( Handle, StoredProcedure) SQLEXEC( Handle, Create Proc) SQLEXEC( Handle, Create Proc) myproc as select *, select *, select * / SQLEXEC myproc as select *, select *, select * / SQLEXEC SQLGETPROP( ) SQLGETPROP( ) SQLSETPROP( ) SQLSETPROP( ) AERROR( ) AERROR( )

Wizards & Builders GmbH Parameter Aufruf mit Parametern: Aufruf mit Parametern: =SQLExec( Handle, where = ?cVar) =SQLExec( Handle, {CALL sp_test ()}) z.B. 2,4, für Create Procedure int output as z.B. 2,4, für Create Procedure int output as Float (N,F,B) wird zu N konvertiert Float (N,F,B) wird zu N konvertiert Anzeigebreite 20 Anzeigebreite 20 Date, Time wird zu Datetime Date, Time wird zu Datetime

Wizards & Builders GmbH Joins, Connection Defaults Outer Join auf Server: a *= b Outer Join auf Server: a *= b Outer Join auf ODBC: {oj expression} Outer Join auf ODBC: {oj expression} from {oj a left outer join b on a.id = b.id} from {oj a left outer join b on a.id = b.id} SQLSETPROP/SQLGETPROP( 0 ) SQLSETPROP/SQLGETPROP( 0 )

Wizards & Builders GmbH Connection Properties ConnectString, DataSource, UserID, Pw ConnectString, DataSource, UserID, Pw DispLogin, DispWarning, ConnectBusy DispLogin, DispWarning, ConnectBusy Connect/Idle/QueryTimeout, WaitTime Connect/Idle/QueryTimeout, WaitTime Aynchronous, BatchMode Aynchronous, BatchMode Transactions, PacketSize Transactions, PacketSize ODBChdbc2, ODBChstmt2 (für FLLs!) ODBChdbc2, ODBChstmt2 (für FLLs!)

Wizards & Builders GmbH Transaktionen DB/SQLSETPROP( Transaction, n) DB/SQLSETPROP( Transaction, n) Automatischn = 1(Default) Automatischn = 1(Default) Manuelln = 2 Manuelln = 2 VFP-Transaktionen getrennt davon! VFP-Transaktionen getrennt davon! SQL-Passthrough hat nur einen Transaktions-Level! SQL-Passthrough hat nur einen Transaktions-Level!

Wizards & Builders GmbH Asynchrone Ausführung (1) Default: Synchrone Ausführung (Wait) Default: Synchrone Ausführung (Wait) Möglich: Asynchrone Ausführung für Möglich: Asynchrone Ausführung für SQLEXEC, SQLMORERESULTS SQLEXEC, SQLMORERESULTS SQLTABLES, SQLCOLUMNS SQLTABLES, SQLCOLUMNS Abbruch mit SQLCANCEL( ) Abbruch mit SQLCANCEL( ) Non-Batch-Mode: Sqlmoreresults() Non-Batch-Mode: Sqlmoreresults() Mischung: Async/Sync-Batch/Non-Batch Mischung: Async/Sync-Batch/Non-Batch

Wizards & Builders GmbH Asynchrone Ausführung (2)

Wizards & Builders GmbH MS SQL Server Einführung in das Arbeiten mit Microsoft SQL-Server

Wizards & Builders GmbH Vorgeschichte Dr. Eppstein und Mark Hoffmann Dr. Eppstein und Mark Hoffmann SYBASE ab 1987 SYBASE ab 1987 Vertrieb durch Microsoft Vertrieb durch Microsoft Übernahme Quellcode als Eigenprodukt Übernahme Quellcode als Eigenprodukt Weiterentwicklung (Oberfläche, Integration, Kundenwünsche) Weiterentwicklung (Oberfläche, Integration, Kundenwünsche)

Wizards & Builders GmbH Installation Named Pipes als Protokoll (TCP/IP) Named Pipes als Protokoll (TCP/IP) Physikalischer Pfad Physikalischer Pfad Automatischer Start (nur bei Server) Automatischer Start (nur bei Server) Zeichensatz und Sortierung (einheitlich für Datenbank) Zeichensatz und Sortierung (einheitlich für Datenbank) Lokales Systemkonto (statt User) Lokales Systemkonto (statt User) Anlage MASTER.DAT (25 MB) Anlage MASTER.DAT (25 MB)

Wizards & Builders GmbH SQL Enterprise Manager Registrierung beim Erststart (SA) Registrierung beim Erststart (SA) SQL-Service Manager SQL-Service Manager SQL-Mail, SQL-Executive SQL-Mail, SQL-Executive Database Devices Database Devices Backup Devices Backup Devices Databases Databases Logins (User, Rechte) Logins (User, Rechte)

Wizards & Builders GmbH Devices eigentlich Drive eigentlich Drive Create Now oder Create Now oder via Executive via Executive Mirroring Mirroring Vergrößern (Right / Rechte beachten) Vergrößern (Right / Rechte beachten) Verkleinern NEIN Verkleinern NEIN Backup Devices Backup Devices Platte, Bandlaufwerk Platte, Bandlaufwerk

Wizards & Builders GmbH Datenbanken in einem Device in einem Device Größe änderbar Größe änderbar max. 7 Terabyte Gesamtgröße max. 7 Terabyte Gesamtgröße Transaction Log Transaction Log anderes Device anderes Device ausreichende Größe ausreichende Größe Create for Load Create for Load statt mit 0 auffüllen statt mit 0 auffüllen

Wizards & Builders GmbH Tabellen / Zugriffsrechte Tabellen Tabellen Ansichten (SQL) Ansichten (SQL) Stored Procedure Stored Procedure Transact SQL Transact SQL extended procedures extended procedures Regeln (Feld-/Satz- Validierung) Regeln (Feld-/Satz- Validierung) Defaultwerte Defaultwerte Datentypen (s.o.) Datentypen (s.o.)

Wizards & Builders GmbH Pages / Indizes Pagesize Pagesize 2048 Byte je Page, 2016 für Datensätze 2048 Byte je Page, 2016 für Datensätze Pagelocking (ggf. mehrere Sätze gesperrt!) Pagelocking (ggf. mehrere Sätze gesperrt!) Indizes Indizes CLUSTEREDvorsortiert, Lesen schnell CLUSTEREDvorsortiert, Lesen schnell NON-CLUSTEREDschneller beim Schreiben NON-CLUSTEREDschneller beim Schreiben Transaction Log Transaction Log ohne Order by wird erster Index verwendet ohne Order by wird erster Index verwendet

Wizards & Builders GmbH Server-Konfiguration Fill FactorFüllgröße Indexpages Fill FactorFüllgröße Indexpages LE Treshold Max.Pagelocks für Dateisperre LE Treshold Max.Pagelocks für Dateisperre LE Treshold PercentDito in Prozent LE Treshold PercentDito in Prozent LocksAnzahl Satzsperren (32 B) LocksAnzahl Satzsperren (32 B) MemorySpeicher (2 Kilobyte) MemorySpeicher (2 Kilobyte) Open DatabasesOffene Datenbanken Open DatabasesOffene Datenbanken Open ObjectsOffene Objekte (70 Byte) Open ObjectsOffene Objekte (70 Byte) User ConnectionsOffene Verbindungen User ConnectionsOffene Verbindungen Speicherbedarf höher, bei Überschreitung Probleme! Speicherbedarf höher, bei Überschreitung Probleme!

Wizards & Builders GmbH Unterschiede SQL-Server-DB Unterschiede von SQL-Server- Datenbanken zu Datenbanken in Microsoft Visual FoxPro

Wizards & Builders GmbH Vorbereitung für Upsizing Platz auf Harddisk großzügig! Platz auf Harddisk großzügig! Zugriffsrechte Zugriffsrechte Create Table/Default, Database/Select, Admin Create Table/Default, Database/Select, Admin Datenbankgröße (DBF*1.3, FPT*x) Datenbankgröße (DBF*1.3, FPT*x) Memofeld 32 Byte wird zu Page a 2048 Byte (z.B Memos = 320 KB -> 20 MB ) Memofeld 32 Byte wird zu Page a 2048 Byte (z.B Memos = 320 KB -> 20 MB ) Alter Database Alter Database Device-Größe Device-Größe Größe Transaction-Log > Datenerstbestand Größe Transaction-Log > Datenerstbestand

Wizards & Builders GmbH Objekt-Mapping (1) MS Visual FoxPro: Datenbank Datenbank Tabelle Tabelle Feld Feld Index Index Default Default Satzvalidierung Satzvalidierung Feldvalidierung Feldvalidierung Persistente Relation Persistente Relation MS SQL-Server: Datenbank Datenbank Tabelle Tabelle Feld Feld Index Index Default Default Stored Proc (Upd/Ins) Stored Proc (Upd/Ins) Upd/Ins/Del-Trigger oder Table Constraints Upd/Ins/Del-Trigger oder Table Constraints

Wizards & Builders GmbH Field-Mapping (2) MS Visual FoxPro: Character Character Currency Currency Date Date Datetime Datetime Double Double Float Float General General MS SQL-Server: Char Char Money Money Datetime Datetime Float Float Image Image

Wizards & Builders GmbH Field-Mapping (3) MS Visual FoxPro: Integer Integer Logical Logical Memo Memo Memo Binary Memo Binary Character Binary Character Binary Numeric Numeric MS SQL-Server: Int Int Bit Bit Text Text Image Image Binary Binary Float Float

Wizards & Builders GmbH Index-Mapping (4) MS Visual FoxPro: Primary Primary Candidate Candidate Regular Regular Unique Unique MS SQL-Server: Clustered Unique Clustered Unique Unique Unique Non-Unique Non-Unique Keine Ausdrücke Keine Ausdrücke Kein Asc/Desc Kein Asc/Desc

Wizards & Builders GmbH Expression Mapping (5 ff.) MS Visual FoxPro: cMonth() usw. cMonth() usw. Day(), Hour() usw. Day(), Hour() usw. Dtoc() usw. Dtoc() usw. Date() usw. Date() usw..T. /.F..T. /.F. keine Punkte bei AND/OR/NOT/NULL keine Punkte bei AND/OR/NOT/NULL MS SQL-Server: DATENAME() DATENAME() DATEPART() DATEPART() CONVERT() CONVERT() GETDATE() GETDATE() 0 / 1 0 / 1

Wizards & Builders GmbH Aufräumarbeiten Nachbesserung Konvertierung: Eindeutige Schlüssel nachtragen (Upd) Eindeutige Schlüssel nachtragen (Upd) Konfiguration von: Datenbankzugriffsrechte (sp_adduser) Datenbankzugriffsrechte (sp_adduser) Objektzugriffsrechte (GRANT/REVOKE) Objektzugriffsrechte (GRANT/REVOKE) Recovering (ggf. Database Dump) Recovering (ggf. Database Dump) Backup Scheduling Backup Scheduling Device Mirroring Device Mirroring

Wizards & Builders GmbH Überprüfungen Referentielle Integrität / Trigger (Neu!) Referentielle Integrität / Trigger (Neu!) Default-Werte (erst nach Insert!) Default-Werte (erst nach Insert!) Field/Table-Validations (Neu!) Field/Table-Validations (Neu!) Event Order ggf. anders Event Order ggf. anders Lostfocus (Satz statt Feld) Lostfocus (Satz statt Feld) Optimistic Record Locking (Page Lock!) Optimistic Record Locking (Page Lock!)

Wizards & Builders GmbH Optimierung Client/Server Zugriffsoptimierung von Client/Server unter Microsoft Visual FoxPro

Wizards & Builders GmbH Connections In Vorbereitung In Vorbereitung

Wizards & Builders GmbH Data Retrieval In Vorbereitung In Vorbereitung

Wizards & Builders GmbH Queries und Views In Vorbereitung In Vorbereitung

Wizards & Builders GmbH Masken In Vorbereitung In Vorbereitung

Wizards & Builders GmbH Einfügen und Löschen In Vorbereitung In Vorbereitung

Wizards & Builders GmbH Red Classes Darstellung der Red Classes- Klassenbibliothek für C/S für Microsoft Visual FoxPro

Wizards & Builders GmbH Red Classes für C/S Application Manager Application Manager Form Manager Form Manager Toolbar Manager Toolbar Manager Report Manager Report Manager Data Manager Data Manager Remote Views Remote Views Parameterized Views Parameterized Views SQL Pass Through SQL Pass Through Connections Connections

Wizards & Builders GmbH Was ist zu bedenken? Parallentwicklung lokal/remote ist leider aufwendig Parallentwicklung lokal/remote ist leider aufwendig Ggf. immer C/S ? (zB SQL Anywhere) Ggf. immer C/S ? (zB SQL Anywhere) Ggf. Nie C/S ? Ggf. Nie C/S ? Optimierungen... Optimierungen... Red Classes kaufen Red Classes kaufen

Wizards & Builders GmbH Vielen Dank! Das waren die Themen: Client/Server Client/Server Connections Connections Remote Views Remote Views SQL-Pass-Through SQL-Pass-Through MS SQL-Server MS SQL-Server Unterschiede zu Serverdatenbanken Unterschiede zu Serverdatenbanken Optimierung C/S Optimierung C/S The Red Classes The Red Classes

Wizards & Builders GmbH Wenn Fragen bestehen: Wizards & Builders Methodische Software- Entwicklung GmbH Frankfurter Str. 21b Kronberg Tel.: Fax: CIS: ,175