AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Access "leere Zeichenfolge" erlauben
Thema durchsuchen
Ansicht
Themen-Optionen

Access "leere Zeichenfolge" erlauben

Ein Thema von Ducksoul · begonnen am 9. Apr 2010 · letzter Beitrag vom 9. Apr 2010
Antwort Antwort
Ducksoul

Registriert seit: 19. Apr 2006
Ort: Ilmenau
87 Beiträge
 
RAD-Studio 2009 Pro
 
#1

Access "leere Zeichenfolge" erlauben

  Alt 9. Apr 2010, 12:15
Datenbank: Access • Zugriff über: ADO
Guden,

ich arbeite an einem Programm, welches Access Datenbanken benutzt. Access bietet bei Feldeigenschaften den Wert "Leere Zeichenfolge erlauben". Bis jetzt hat der Wert anscheinend keinen interessiert - bis Windows 7 kam.
In den DB's ist des Programms ist der Wert auf "Nein" gestellt. Bis jetzt hat auch alles wunderbar geklappt, nur wurde seit Win7 anscheinend eine Überprüfung eingeführt, ob die Felder auch wirklich nicht leer sind. Das war bis jetzt nicht so. Ab Win 7 wirft Delphi Exceptions.

Im Grunde ist das auch alles gut so, nur stehe ich nun vor dem Problem, dass die besagten Felder in den Datenbanken nun auf "Leere Zeichenfolge erlauben := jup" umgestellt werden müssen. Manuell gehts nich, weil die Kunden auch in Italien etc sitzen und man denen nich sagen kann, dass sie es ma eben umstellen sollen.

Also muss ich das iwie via Code machen, welcher beim Programmupdate ausgeführt wird. Aber wo? Ist der Eintrag in irgendwelchen Systemtabellen hinterlegt auf die ich via SQL zugreifen kann?

Gruß
Franz
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Access "leere Zeichenfolge" erlauben

  Alt 9. Apr 2010, 12:26
Gab es einen Grund für das not NULL? Wenn ja wäre es vielleicht sinnvoller das Programm anzupassen
Markus Kinzler
  Mit Zitat antworten Zitat
Ducksoul

Registriert seit: 19. Apr 2006
Ort: Ilmenau
87 Beiträge
 
RAD-Studio 2009 Pro
 
#3

Re: Access "leere Zeichenfolge" erlauben

  Alt 9. Apr 2010, 12:33
Ne. NULL is erlaubt. Das Problem sind Leere Zeichenfolgen. Also der Value eines Textfeldes wäre dann: ''

Das Problem ist, dass die Daten so abgespeichert werden wie sie in den Forms stehen. Also wenn ein Edit leer ist, dann wird ein Leerstring reingeschrieben. Das Feld ist ja dann sozusagen nicht mehr NULL.
Nur die Programmlogik zu ändern und die zig tausend Stellen zu finden, wo anstatt Leerstring dann das Feld NULL gesetzt werden müsste ist denke ich noch komplexer, als den Wert zu ändern.
Zumal dann auch die Wahrscheinlichkeit nicht allzu gering wäre, dass man was übersieht.


Gruß

Edit:

Die Lösung fand sich nun doch ziemlich fix:

Delphi-Quellcode:
procedure TDbu.ChangeProperties(scon: string);
var
  Catalog: _Catalog;
begin
  Catalog := CoCatalog.Create;
  Catalog.Set_ActiveConnection(scon);
  Catalog.Tables['Stammdata'].Columns['PruefOrtName'].Properties['Jet OLEDB:Allow Zero Length'].Value := true;
end;
Franz
  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:07 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