Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi PrimärIndex wird nicht angelegt (https://www.delphipraxis.net/212521-primaerindex-wird-nicht-angelegt.html)

hoika 22. Feb 2023 12:50

AW: PrimärIndex wird nicht angelegt
 
Hallo,
hilft das hier?
Gerade der untere Bereich mit dem zusätzlichen CreateTable-Parametern.

https://stackoverflow.com/questions/...out-sql-script

himitsu 22. Feb 2023 12:57

AW: PrimärIndex wird nicht angelegt
 
Wenn im Import für das AutoInc-Feld Daten vorhanden sind, dann werden Diese doch benutzt?
Das AutoInc sollte doch nur greifen, wenn man diesem Feld nichts zuweist, auch kein NULL (aber egal, da ja NOT NULL).

Uwe Raabe 22. Feb 2023 13:50

AW: PrimärIndex wird nicht angelegt
 
Nein, denn ein AutoInc-Feld ist in der Regel vom Update ausgeschlossen und ReadOnly.
Zu diesem Zweck gibt es bei dem FireDAC-eigenen TFDAutoIncField eben das Property IdentityInsert. Dahinter steckt auch nichts Außergewöhnliches, was man nicht auch selbst machen könnte:
Delphi-Quellcode:
procedure TFDAutoIncField.SetIdentityInsert(const AValue: Boolean);
begin
  if AValue then begin
    ReadOnly := False;
    ProviderFlags := ProviderFlags + [pfInUpdate];
  end
  else begin
    ReadOnly := True;
    ProviderFlags := ProviderFlags - [pfInUpdate];
  end;
end;

Reinhold 23. Feb 2023 13:18

AW: PrimärIndex wird nicht angelegt
 
Hallo Klaus,

dein Code:
Code:
   table.AddIndex('pkRow1', 'row1', '', [soPrimary]);
und hier der Code von Uwe (Post #7):
Code:
   table.AddIndex('pkRow1', 'row1', '', [ixPrimary]);
fällt dir da irgenwas auf.

Klaus01 24. Feb 2023 06:38

AW: PrimärIndex wird nicht angelegt
 
Zitat:

Zitat von Reinhold (Beitrag 1519024)
Hallo Klaus,

dein Code:
Code:
   table.AddIndex('pkRow1', 'row1', '', [soPrimary]);
und hier der Code von Uwe (Post #7):
Code:
   table.AddIndex('pkRow1', 'row1', '', [ixPrimary]);
fällt dir da irgenwas auf.

da zitierst Du falsch.

bei Uwe ist es so:
Code:
   table.IndexDefs.Add('pkRow1', 'row1', [ixPrimary]);


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:28 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz