Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Insert bei MSSQL und Autoinc (https://www.delphipraxis.net/156018-insert-bei-mssql-und-autoinc.html)

Hansi 16. Nov 2010 21:23

Datenbank: MSSQL • Version: 2005 • Zugriff über: ADO

Insert bei MSSQL und Autoinc
 
Hallo,

Ich bin etwas am verzeifeln; normalerweise arbeite ich mit MySQL; In diesem kleinen Projekt aber mit MSSQL und da scheint einiges anders zu sein.
Ich möchte ein einfaches Insert in Tab1 machen. Das erste Feld der Tab1 ist ein Autoincrement das nicht Null ist laut DB-Einstellungen. Nur sagt er mir dauernd ich darf dem Feld nicht NULL zuweisen, dabei spreche ich das Feld gar nicht an.
Delphi-Quellcode:
INSERT INTO Tab1 (Feld2, Feld3) Values (:p2, :p3)
Feld1 ist das Autoincrement Feld.

Was mache ich da falsch?

alzaimar 16. Nov 2010 21:25

AW: Insert bei MSSQL und Autoinc
 
AutoInc-Felder dürfen nicht beschrieben werden.

Hansi 16. Nov 2010 21:27

AW: Insert bei MSSQL und Autoinc
 
hallo,

nein das mach ich ja auch nicht; Ich beschreibe Feld 2 und 3 und nicht Feld1 (autoinc).
Oder wie meinst du das?

Satty67 16. Nov 2010 21:28

AW: Insert bei MSSQL und Autoinc
 
Muss aber beim Insert trotzdem angegeben werden?

SQL-Code:
INSERT INTO Tab1 (Feld1,Feld2, Feld3) Values (NULL, :p2, :p3)

mkinzler 16. Nov 2010 21:31

AW: Insert bei MSSQL und Autoinc
 
Zitat:

Muss aber beim Insert trotzdem angegeben werden?
Normalerweise nicht
SQL-Code:
INSERT INTO Tab1 (Feld2, Feld3) Values (:p2, :p3);

Satty67 16. Nov 2010 21:36

AW: Insert bei MSSQL und Autoinc
 
Hat er das nicht so probiert (bis auf den Term)?

Dachte NOT NULL Felder müssen beim Insert angegeben werden und da AUTOINC als Wert NULL? Bin aber auch nicht sicher...

Hansi 16. Nov 2010 21:36

AW: Insert bei MSSQL und Autoinc
 
nein NULL darf das autoinc Feld ja nicht haben.

Anscheinend braucht die DB eine Info zähle das Feld1 um eins hoch und schreibe dann den Wert rein. Wobei das kann ja auch nicht sein, oder?

Satty67 16. Nov 2010 21:39

AW: Insert bei MSSQL und Autoinc
 
Zitat:

Zitat von Hansi (Beitrag 1062046)
nein NULL darf das autoinc Feld ja nicht haben.

Ausprobiert? ;) (Erklärung warum siehe oben)

Aber laut mkinzler (der sich mit am besten hier mit SQL auskennt) liege ich nicht ganz richtig mit meiner Vermutung.

Hansi 16. Nov 2010 21:43

AW: Insert bei MSSQL und Autoinc
 
hmmm

in mysql geht das so: INSERT INTO Tab1 (Feld2, Feld3) Values (:p2, :p3)

Die Frage ist nur warum das in MSSQL nicht tut und wie ich es machen muss. hmmm

mkinzler 16. Nov 2010 21:54

AW: Insert bei MSSQL und Autoinc
 
Poste mal die Deklaration. Der autoinc scheint nicht anzuspringen.


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

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