AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Unterschied Access97--> Access2000
Thema durchsuchen
Ansicht
Themen-Optionen

Unterschied Access97--> Access2000

Ein Thema von aiko07 · begonnen am 3. Jan 2010 · letzter Beitrag vom 5. Jan 2010
Antwort Antwort
aiko07

Registriert seit: 12. Apr 2003
8 Beiträge
 
#1

Unterschied Access97--> Access2000

  Alt 3. Jan 2010, 16:43
Datenbank: Access • Version: 97 +2000 • Zugriff über: Ado-Connection->AddoTable-> DataSource
Hallo Forumsmitglieder,
vorab wuensche ich Allen ein angenehmes neues Jahr 2010.
ich beschäftige mich aus Hobby mit dem Thema Delphi (2009) und nun auch mit Datenbank, speziell Access.

Ich greife auf eine Mdb-Datenbank mit 9 Tabellen über Ado-Komp. zu. (Ado-Connection->AddoTable-> DataSource).Die AdoTable-Comp. habe ich mit einer Tabelle mit folgenden Feldern verbunden: Feld1: Text, Feld2: Text; Feld3: LongInt als Autowert (PrimaerKey); Feld4: Ja/Nein, Feld5: Ja/Nein, Feld6: Zahl(longInt). Ich habe die Datenbank im ori. im Format 97 vorliegen und anschliessend ueber Access in das Format 2000 konvertiert. Ich habe der Addotable-Comp. die Felder der Tabelle ueber die "Fields-Eigenschaft" zugewiesen.

Ich möchte auf beide,97 +2000 Access-Formate, zugreifen. Für die ersten Tests weise ich den Connection-String direct der Ado-Connection-Comp zu.

Zur Datensteuerung verwende ich eine eine DB-Grid und ein DBNavigator.

Der erste Test erfolgte auf die Access2000-Format-Datenbank.
Ich lege ueber das DBNavigator einen neuen Datensatz an und trage im Feld2 einen String ein. Anschliessend ueber Post wird der Datensatz in die Tabelle einegefuegt. Alles OK, keine Fehler, wichtig, der Autowert in Feld3 wird inkrementiert.

Anschliesssend der gleiche Test mit der Acceess 97 Version. Verbindung OK, alle vorhandenen Daten werden im Grid dargestellt. Ich fuege einen neuen Datensatz ein, OK, leeres Record wird dargestellt. Ich fuege einen String im Feld2 ein, OK. Ich schliesse den Befehl mit "Post" ueber DBNavigator ab, OK, aber das Feld3 (Autowert) wird nicht inkrementiert, ist leer. Ueber den Nav-Button "Actualisieren" versuche ich die Tabelle zu actualisieren, es wird folgende Debugger-Exeption ausgeloest.
"Der Schluesselwert fuer die Zeile wurde in der Datenquelle geaendert oder geloescht. Die lokale Zeile ist nun geloescht."

Ist mir schon klar, nur warum wird der Autowert nicht inkrementiert?

//---->
Connection-String Access97
(Provider=Microsoft.Jet.OLEDB.3.51;Persist Security Info=False;User ID=Admin;Data Source=C:\Temp\test\Database.mdb;Mode=Share Deny None;Extended Properties=";COUNTRY=0;CP=1252;LANGID=0x0409";Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDBatabase Password="";Jet OLEDB:Global Partial Bulk Ops=2

Connection-String Access2000
Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=C:\Temp\test\Database_2.mdb;Mode=Share Deny None;Extended Properties="";Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDBatabase Password="";Jet OLEDB:Engine Type=5;Jet OLEDBatabase Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDBon't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False
//<---


Vielen dank fuer Eure Rueckmeldung.

Viele Gruesse,

Bernd
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

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

Re: Unterschied Access97--> Access2000

  Alt 3. Jan 2010, 16:47
Wieso noch überhaupt Access'97. Die Anzahl der PC's die nur Access 97 und nicht Access-2000/XP/2003/2007-Format können dürfte im minimalen Promille-Bereich liegen. Wieso also sich noch selbst Stress mit sowas machen und für solche Uralt-DB-Formate versuchen Implementierungsunterschiede heraus zu finden. Vermutlich ist das Access-97-DB-Format nicht mit den aktuelle OLE-DB-Versionen und JET-Versionen kompatible (bzw. MS hat hier eine bugs in der Emuliation der alten Version).
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
aiko07

Registriert seit: 12. Apr 2003
8 Beiträge
 
#3

Re: Unterschied Access97--> Access2000

  Alt 3. Jan 2010, 19:38
//Wieso noch überhaupt Access'97//-->

Es gibt in der Industrie immer noch Systeme, die auf Access97 Datenbank, als lokales Speichermedium setzen/nutzen. Warum, keine Ahnung? (Kosten, Lizenzen??)
Es geht mir nicht darum eine neue Datenbank/System zu erstellen.

Gegeben ist, dass ich diese Konstellation habe und ich gerne das Problem loesen moechte.

Ich weiss nicht so recht, wo ich da nun ansetzen soll. Ein Wink in die richtige Richtung, da fuer waehre ich sehr dankbar.

Viele Gruesse,

Bernd
  Mit Zitat antworten Zitat
hoika

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

Re: Unterschied Access97--> Access2000

  Alt 4. Jan 2010, 11:02
Hallo,

vielleicht hilft dir das
1

Lösung:
Weg von Access97 (steht im Link)


Man könnte auch sagen, Bug, aber sowas gibt es bei MS nicht

Update

http://support.microsoft.com/kb/190370/EN-US/

Viell. hilft ja die Umstellung der CursorLocation auf clUseServer
(wie das geht, sagt die Google).


Heiko
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

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

Re: Unterschied Access97--> Access2000

  Alt 4. Jan 2010, 16:54
Zitat von hoika:
Viell. hilft ja die Umstellung der CursorLocation auf clUseServer
(wie das geht, sagt die Google).
Bei Access sollte man eh immer clUseServer verwenden. Da Access keine richtiges DBMS ist und alles im gleichen Adressraum abläuft ist die Verwendung von cluseClient eh nur ein Bit-Geschupse im Speicher ohne die Vorteile bei einem richtigen DBMS zu bekommen.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
aiko07

Registriert seit: 12. Apr 2003
8 Beiträge
 
#6

Re: Unterschied Access97--> Access2000

  Alt 5. Jan 2010, 14:24
Hallo,

vielen Dank fuer den Link auf die Microsoftseite. Es wird dort ja der Bug, bzw. Unterschied zur 2000 Ver. beschrieben.
Ich habe in meiner Testapplication den CurserTyp auf "clUserServer" gestellt, anschliessend war das Problem mit dem AutoInc-Feld behoben.

Vielen Dank fuer Eure Untestuetzung,

Bernd
  Mit Zitat antworten Zitat
Antwort Antwort


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 03:24 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