Hallo
Wenn ich diese SQL laufen lassen möchte bekommen ich einen error " 3219 ungültige operation".
ich verstehe nicht warum. So wie ihr unten sehen könnt, will ich eine tabelle angelegen wobei die daten aus de tabelle struc kommen und zusätzliche 3 weitere felder. diesen sind nicht in eine tabelle hinterlegt, deshalb im acess2003 frägt ihr nach den wert dieser felder.
In der SLQ anweisung diese 3 spezielle felder haben sind zu einer variable zugeordnet, ( [datum] AS Expr2, [betreff] AS Expr3, [Text] AS Expr1)
Wenn ich aber zu die variablen Expr1,Expr2 und Expr3 einen Wert zuordne müsste jedoch nicht mehr danach fragen.
Ich mache schon lange rum aber ich kommen nicht auf den problem.
kann mir bitte jemand sagen was ich falsch mache? und mir eventuell die korektur vornimmt.
das prog.
---------------------------------------------------------------------
Dim objDB As DAO.Database
Dim objRS As DAO.Recordset
Dim strSQL As String
strSQL = "INSERT INTO Lieferscheine ( [sales unit], GB, [VKL person], [GB person], [mitarbeiter], name, Lieferdatum, Betreff, Text )" & _
"SELECT struc.[sales unit], struc.GB, struc.[VKL person], struc.[GB person], struc.[mitarbeiter], struc.name, [datum] AS Expr2, [betreff] AS Expr3, [Text] AS Expr1 " & _
"FROM struc WHERE (((struc.GB)='25-000'));"
gei_text="hallo"
gei_datum="09/05/2007"
gei_betreff="probe"
Expr1 = gei_text
Expr2 = gei_datum
Expr3 = gei_betreff
Set objDB = CurrentDb
Set objRS = objDB.OpenRecordset(strSQL, , DAO.dbSQLPassThrough)
Call objRS.Close
Set objRS = Nothing
Set objDB = Nothing
---------------------------------------------------------------------
ich danke euch für eure Hilfe
logo3
Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge
Mit der "INSERT INTO ... SELECT FROM"-Anweisung bin ich nicht so vertraut, ob diese Syntax so richtig ist, mußt Du in der Hilfe nachschauen.
Bei den Abfragen in der SQL-Anweisung kann ich Dir aber auf jeden Fall helfen.
Dim gei_datum As Date
Dim gei_betreff As String
Dim gei_text As String
Dim strSQL As String
gei_datum = Now
gei_betreff = "hallo"
gei_text = "das ist ein bsp."
strSQL = "INSERT INTO Lieferscheine ([sales unit], GB, [VKL person], [GB person], [mitarbeiter], [name], Lieferdatum, Betreff, [Text]) " & _
"SELECT struc.[sales unit], struc.GB, struc.[VKL person], struc.[GB person], struc.[mitarbeiter], struc.[name], " & _
Format$(CDate(gei_datum), "\#mm\/dd\/yyyy#") & " AS datum, " & _
"'" & Replace$(gei_betreff, Chr$(39), Chr$(39) & Chr$(39)) & "' AS betreff, " & _
"'" & Replace$(gei_text, Chr$(39), Chr$(39) & Chr$(39)) & "' AS [Text] " & _
"FROM struc WHERE (struc.GB = '25-000');"
Debug.Print strSQL
Im Debug-Fenster (zu erreichen über STRG+G) kannst Du nun die fertge SQL-Anweisung sehen, wie sie später an die Datenbank übergeben wird.