INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

ZeilenID bei "Insert" mit LabVIEW-DB-Toolkit zurückholen



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

20.11.2006, 10:18
Beitrag #2

cb Offline
LVF-SeniorMod


Beiträge: 1.731
Registriert seit: Feb 2006

2018SP1
2001
EN

40xxx
Deutschland
ZeilenID bei "Insert" mit LabVIEW-DB-Toolkit zurückholen
' schrieb:INSERT INTO tabname (Spalte1, Spalte2,...) VALUES (Wert1,Wert2,...); SELECT @@identity.

Getestet haben wir das für die MySQL-Datenbank über das Programm "Navicat" und dort bekomme ich die Zeilennummer zurück.

Rufe ich eine solche Anweisung über die LabVIEW-Funktionen auf, erhalte ich eine Fehlermeldung vom ODBC-Treiber (für MySQL)
"... You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '; select @@identity' at line 1. in Conn Execute.vi"

leider kann man mittels ADO immer nur ein SQL-Statement schicken, darum kommt es zu der Fehlermeldung, wenn du versuchst das SELECT @@identity an das erste Statement dranzuhängen. Das NI-DB-Toolkit kann das nicht verarbeiten, da es intern auch "nur" mit ADO arbeitet.

Du hast mehrere Möglichkeiten das zu umgehen:
1. Du programmierst deine DB Funktionalität so um, dass du sicher stellst, dass auf das INSERT immer sofort das SELECT @@identity folgt.

2. könnte es sein, dass MySQL die identity pro user anlegt? Da bin ich mir nicht sicher, aber ich könnte mir vorstellen, dass die Entwickler von MySQL genau diesen Fall vorhergesehen haben und entsprechende Vorkehrungen getroffen haben

3. Du programmierst dein Insert als Stored Procedure, die dir das Ergebnis der Einfügeoperation zurückliefert

WERBUNG: hast du dir schon mal DAS HIER angeschaut?Wink

Grüße
CB

http://www.rotabench.com - rotierende Prüfstände nach dem Baukasten-Prinzip
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Nachrichten in diesem Thema
ZeilenID bei "Insert" mit LabVIEW-DB-Toolkit zurückholen - cb - 20.11.2006 10:18

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Erfahrungen Labview database connectivity toolkit Cardinal1664 2 5.604 11.10.2016 15:13
Letzter Beitrag: Cardinal1664
  insert data auf fetch recordset data ColdducK 9 7.798 23.12.2011 11:04
Letzter Beitrag: ColdducK
  LabVIEW Database Connectivity Toolkit nookie 3 6.254 04.11.2009 14:52
Letzter Beitrag: nookie

Gehe zu: