Jump to content

Sql Select bringt Fehler


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Geschrieben

Hallo,

ich habe etwas vba in Excel eingebettet und führe Selects auf eine SQL Server 2005 Datenbank aus.

Dies funktioniert sehr gut.

Nun habe ich eine rekursive Abfrage benötigt und bin im Internet auf die Lösung gestoßen.

Der Select sieht so aus:

 

WITH StructReports ( STRUKTURELEMENT_ID, VATER_STRUKTURELEMENT_ID, NAME , Level, path)

AS

(

-- Anchor member definition

SELECT

STRUKTURELEMENT_ID,

VATER_STRUKTURELEMENT_ID,

NAME ,

0 AS Level,

se.NAME as path

FROM dbo.Strukturelement as se

WHERE VATER_STRUKTURELEMENT_ID is null

UNION ALL

-- Recursive member definition

SELECT

se.STRUKTURELEMENT_ID,

se.VATER_STRUKTURELEMENT_ID,

se.NAME ,

Level +1,

sv.path + @trenner + se.Name as path

FROM dbo.Strukturelement as se

inner join StructReports as sv

on se.VATER_STRUKTURELEMENT_ID = sv.STRUKTURELEMENT_ID

)

Select * from StructReports r

order by path

 

Im Sql Management Studio liefert die Abfrage auch ein Ergebnis.

Nur in VBA erhalte ich die Fehlermeldung "Falsche Syntax in der Nähe des 'WITH'-Schlüsselwortes."

Ich lege das Statement in die Variable sSelect und führe diesen Befehl aus:

rs.Open sSelect, hSql, adOpenForwardOnly, adLockReadOnly

 

Muss ich bei der Verwendung von WITH etwas anders machen?:confused:

Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...