sqlString = "SELECT O_ID, O_Username, O_Name, O_Zone, Z_title " &_
"FROM Operators, Zones, ZoneAssignments AZ " &_
"WHERE AZ.O_ID = 0_ID " &_
"AND AZ.Z_ID = Z_ID " &_
"ORDER BY Z_title, O_Name"
SET objOpRS = Con.Execute( sqlString )
Microsoft JET Database Engine (0x80040E14)
Syntaxfel i frågeuttrycket 'AZ.O_ID = 0_ID AND AZ.Z_ID = Z_ID'.
ska det inte vara bokstaven O, där står det väl 0 (noll)
AZ.O_ID = 0_ID
bara en chansning eftersom resten utav namnen är med bokstaven O... ;)
Självklart var det så men nu får jag ett annat felmeddelande.
sqlString = "SELECT = O_ID, O_Username, O_Name, Z_title " &_
"FROM Operators O, Zones Z, ZoneAssignments AZ " &_
"WHERE AZ.O_ID = O.O_ID " &_
"AND AZ.Z_ID = Z.Z_ID " &_
"ORDER BY Z_title, O_Name"
SET objOpRS = Con.Execute( sqlString )
Microsoft JET Database Engine (0x80004005)
Det angivna fältet 'O_ID' kan referera till fler än en av de tabeller som är uppräknade i SQL-uttryckets FROM-instruktion.
LarsGMedlem sedan dec. 200012 464 inlägg Ja, det stämmer.
sqlString = "SELECT AZ.O_ID, O_Username, O_Name, Z_title " &_
"FROM Operators O, Zones Z, ZoneAssignments AZ " &_
"WHERE AZ.O_ID = O.O_ID " &_
"AND AZ.Z_ID = Z.Z_ID " &_
"ORDER BY Z_title, O_Name"
SET objOpRS = Con.Execute( sqlString )
Jag kanske ska förklara vad jag ska göra istället.
Från tabell operators ska jag hämta namn, användarnamn och o_ID
Sedan finns det en tabell som heter ZoneAssignments med kolumnerna O_ID och Z_ID OCh den linkar samman n annan tabell som heter zoner med operators.
EX:
Om vi har tabellen Operators med följande
O_ID = 1
O_Name = Andreas
Tabellen Zones med följande
Z_ID = 4
Z_title = Testzon
Tabellen ZoneAssignments som linkar ihop Zones Och Operators
O_ID = 1
Z_ID = 4
Detta ska ge utskriften
1 Andreas Testzon
Det löste sig, sproblemet var i tabellen inte i frågan.
sqlString = "SELECT O.O_ID, O_Username, O_Name, Z_title " &_
"FROM Operators O, Zones Z, ZoneAssignments AZ " &_
"WHERE AZ.O_ID = O.O_ID " &_
"AND Z.Z_ID = AZ.Z_ID " &_
"ORDER BY Z_title, O_Name"
SET objOpRS = Con.Execute( sqlString )
LarsGMedlem sedan dec. 200012 464 inlägg Det borde du få med den frågan jag skrev (bortsett från o_username).
Så vad är problemet med
sqlString = "SELECT AZ.O_ID, O_Name, Z_title " &_
"FROM Operators O, Zones Z, ZoneAssignments AZ " &_
"WHERE AZ.O_ID = O.O_ID " &_
"AND AZ.Z_ID = Z.Z_ID " &_
"ORDER BY Z_title, O_Name"
SET objOpRS = Con.Execute( sqlString )
PRoblemet var att den raden i ZoneAssignemnt var fel så att det inte blev någon utskrift. När jag ändrade den raden så att den var rätt så funkade allt.
Tack