AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Insert bei MSSQL und Autoinc
Thema durchsuchen
Ansicht
Themen-Optionen

Insert bei MSSQL und Autoinc

Ein Thema von Hansi · begonnen am 16. Nov 2010 · letzter Beitrag vom 16. Nov 2010
Antwort Antwort
Seite 1 von 2  1 2      
Hansi

Registriert seit: 8. Okt 2004
271 Beiträge
 
#1

Insert bei MSSQL und Autoinc

  Alt 16. Nov 2010, 22:23
Datenbank: MSSQL • Version: 2005 • Zugriff über: ADO
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.
INSERT INTO Tab1 (Feld2, Feld3) Values (:p2, :p3) Feld1 ist das Autoincrement Feld.

Was mache ich da falsch?
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#2

AW: Insert bei MSSQL und Autoinc

  Alt 16. Nov 2010, 22:25
AutoInc-Felder dürfen nicht beschrieben werden.
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
Hansi

Registriert seit: 8. Okt 2004
271 Beiträge
 
#3

AW: Insert bei MSSQL und Autoinc

  Alt 16. Nov 2010, 22:27
hallo,

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

Registriert seit: 24. Feb 2007
Ort: Baden
1.566 Beiträge
 
Delphi 2007 Professional
 
#4

AW: Insert bei MSSQL und Autoinc

  Alt 16. Nov 2010, 22:28
Muss aber beim Insert trotzdem angegeben werden?

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

Geändert von Satty67 (16. Nov 2010 um 22:33 Uhr)
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

AW: Insert bei MSSQL und Autoinc

  Alt 16. Nov 2010, 22:31
Zitat:
Muss aber beim Insert trotzdem angegeben werden?
Normalerweise nicht
INSERT INTO Tab1 (Feld2, Feld3) Values (:p2, :p3);
Markus Kinzler
  Mit Zitat antworten Zitat
Satty67

Registriert seit: 24. Feb 2007
Ort: Baden
1.566 Beiträge
 
Delphi 2007 Professional
 
#6

AW: Insert bei MSSQL und Autoinc

  Alt 16. Nov 2010, 22:36
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...
  Mit Zitat antworten Zitat
Hansi

Registriert seit: 8. Okt 2004
271 Beiträge
 
#7

AW: Insert bei MSSQL und Autoinc

  Alt 16. Nov 2010, 22:36
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?
  Mit Zitat antworten Zitat
Satty67

Registriert seit: 24. Feb 2007
Ort: Baden
1.566 Beiträge
 
Delphi 2007 Professional
 
#8

AW: Insert bei MSSQL und Autoinc

  Alt 16. Nov 2010, 22:39
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.
  Mit Zitat antworten Zitat
Hansi

Registriert seit: 8. Okt 2004
271 Beiträge
 
#9

AW: Insert bei MSSQL und Autoinc

  Alt 16. Nov 2010, 22:43
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
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

AW: Insert bei MSSQL und Autoinc

  Alt 16. Nov 2010, 22:54
Poste mal die Deklaration. Der autoinc scheint nicht anzuspringen.
Markus Kinzler
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 12:37 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