hawkmaster: Insert Problem bei SQLServer und ODBC

Hallo,
ich habe zum testen einen MSSQL Server 2005 Express eingerichtet.
Dazu eine Tabelle "testuser" eingerichtet. Dann noch einen MS SQL ODBC Treiber eingerichtet.
Ein kleines Programm von einem Kollegen soll nun in diese Tabelle schreiben.
Das Problem ist: Es wird immer nur ein Datensatz geschrieben.

Das ganze System läuft normalerweise bisher mit MYSQL ohne Probleme.
Nun soll es testweise mit dem MS SQL Server versucht werden.
Ein Test von mir mit PHP und Zugriff bzw. Insert auf die MS SQL Tabelle funktionierte problemlos.

Ich weiss nun nicht wo man den Fehler suchen soll.
Kann es an Rechten liegen?

Hat jemand eine Idee oder einen Ansatz wo man suchen könnte?

vielen Dank
Gruss
hawk

  1. Tipp:
    * Fehlermeldungen bzw. Exceptions im Code abfangen und ausgeben.
    * MSSQL-Serverlog anschauen

    1. Hi

      danke für die Tipps,
      im MS SQL Error Log habe ich schon nachgeschaut
      da steht nichts drin.
      Im Log des kleinen Programms kann ich auch keinen Fehler finden.

      Mal sehen ob der Kollege etwas einbauen kann zur näheren Analyse.

      Komisch ist halt das eine Zeile in die Tabelle eingetragen wird und dann nichts mehr..

      Gruss
      hawk

      Tipp:
      * Fehlermeldungen bzw. Exceptions im Code abfangen und ausgeben.
      * MSSQL-Serverlog anschauen

      1. Wäre interessant zu sehen, wie die SQL-Statements aussehen.

        1. Also der Insert Befehl ist ganz normal aufgebaut.

          INSERT INTO testuser (usr,usertype) VALUES ('Gast','Test')

          1. INSERT INTO testuser (usr,usertype) VALUES ('Gast','Test')

            Diese Anweisung schreibt tatsächlich nur einen Datensatz. Es ist also kein Wunder, dass immer nur ein Datensatz geschrieben wird.

            1. Na ja das war doch nur ein Beispiel einer Zeile.

              Wie es nun im ganzen VC++ Code aussieht kann ich dir leider auch nicht sagen. Soweit ich weiss wird dieser Insert in einer Schleife ausgeführt.

              Na ich schaue mal ob ich näheres herausfinde

              Gruss
              hawk

              1. Hello,

                Na ich schaue mal ob ich näheres herausfinde

                habt ihr in MySQL eine Spalte als auto_increment definiert? Wenn ja, wie habt ihr diese bei MS-SQL angelegt?

                MfG
                Rouven

                --
                -------------------
                sh:| fo:} ch:? rl:( br:& n4:{ ie:| mo:} va:) js:| de:] zu:| fl:( ss:) ls:& (SelfCode)
                1. Hallo
                  danke für deine Hilfe,

                  ja in der MySQL DB ist eine Spalte "ID" dieser Tabelle als auto_increment angelegt.

                  Ich habe diese Spalte beim MS SQL Server bei Identifikationspezifikationen als "ISt identity" definiert.
                  Das müsste dann doch ähnlich zu MySQL sein oder?

                  Muss dann eigentlich auch beim Insert immer die Spalte ID mit angegeben werden? Eigentlich doch nicht.

                  Gruss
                  hawk

                  Hello,

                  Na ich schaue mal ob ich näheres herausfinde
                  habt ihr in MySQL eine Spalte als auto_increment definiert? Wenn ja, wie habt ihr diese bei MS-SQL angelegt?

                  MfG
                  Rouven