[SQL] Meerdere Waardes

Pagina: 1
Acties:

  • ArjanC
  • Registratie: Juli 2001
  • Laatst online: 26-01 17:16
Hoi, ik ben bezig met een boeking applicatietje te maken,
nu wil ik bij hiet zien van de datum (date) eerst alle waardes van room1 en dan room2 enz..

nu heb ik dit.:
select * from tblbooking where ( date = ::date:: and room="room1" )

en dan krijg ik een hele mooie melding :

Description: [Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.
Number: -2147217904 (0x80040E10)
Source: Microsoft OLE DB Provider for ODBC Drivers

wat doe ik fout?

  • RobzQ
  • Registratie: Februari 2000
  • Laatst online: 21-12-2020

RobzQ

greedy as a pig

Is 'Group By' daar niet voor?

..so be wary of any man who keeps a pig farm..


Verwijderd

probeer deze eens

select * from tblbooking
where date = ::date::
group by room

  • ArjanC
  • Registratie: Juli 2001
  • Laatst online: 26-01 17:16
krijg binnen Frontpage een melding :

-------------------------------------------------------
[Microsoft][ODBC Microsoft Access Driver] Cannot group on fields selected with '*'.

Source: Microsoft OLE DB Provider for ODBC Drivers
Number: -2147467259 (0x80004005)

Verwijderd

Nou ken ik FP niet, maar dan zou ik dezelfde querie proberen met alle databasevelden los uitgeschreven.
Dus Select date, room, etc, etc from tabel where date = date() group by room.

Verwijderd

het argument van group by moet altijd geselecteerd zijn
bij select

in jou geval dus

select ROOM, colom, colom, colom from table where date=::date:: group by ROOM

  • ArjanC
  • Registratie: Juli 2001
  • Laatst online: 26-01 17:16
arg, nu krijg ik dit weer


Server error: Unable to retrieve schema information from the query:

SELECT BookingID, Room, Location, date, Begin_time, End_time, Breamer, Videoconference, Description, firstname, lastname FROM tblBooking Where (Date=1) group by room

against a database using the connection string

DRIVER={Microsoft Access Driver (*.mdb)};DBQ=URL=calendar.mdb.

The following error message comes from the database driver software; it may appear in a different language depending on how the driver is configured.
-------------------------------------------------------
[Microsoft][ODBC Microsoft Access Driver] You tried to execute a query that does not include the specified expression 'BookingID' as part of an aggregate function.

Source: Microsoft OLE DB Provider for ODBC Drivers
Number: -2147467259 (0x80004005)

  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 13-09 12:14

Crazy D

I think we should take a look.

Standaart sql.
Bij een group by moeten de te selecteren fields of in een aggregate function staan (dus bv MIN(), MAX()) of je moet ze allemaal noemen in de group by clausule.
Hint: bouw en test je queries in Access. Een opgeslagen query binnen Access werkt als een soort view zoals je die in andere databases tegenkomt. Je kan er gewoon op queryen. Je kan dus SELECT * FROM Tabelletje where ID = 1 ORDER BY veld1 doen vanuit code, je kan ook een query maken binnen Access "SELECT * FROM Tabelltje ORDER BY veld1" doen, en vanuit je code "SELECT * FROM MyQuery WHERR ID = 1".

Exact expert nodig?


  • RobzQ
  • Registratie: Februari 2000
  • Laatst online: 21-12-2020

RobzQ

greedy as a pig

Op woensdag 27 februari 2002 15:07 schreef burp2001 het volgende:
arg, nu krijg ik dit weer
Bult meldingen...
Probeer anders eerst je queries een rechtstreeks in de database te maken en uit te voeren.. Maw dus niet via de odbc laag, kijk of je queries het dan doen, en probeer daarna pas via ODBC.

..so be wary of any man who keeps a pig farm..


  • ArjanC
  • Registratie: Juli 2001
  • Laatst online: 26-01 17:16
Okee.. het begint ergens op te lijken..

Alleen.. :

SELECT * FROM TblBooking WHERE Room='Erasmus Room 'AND date=03-01-2002

geeft mooi de 03-01-2002 datum weer..

"SELECT * FROM TblBooking WHERE Room='Erasmus Room 'AND date=" & showdate

showdate = 03-01-2002 geeft een melding :

Error Type:
ADODB.Field (0x80020009)
Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record.
/calendar/showdate.asp

:(

  • bigtree
  • Registratie: Oktober 2000
  • Laatst online: 07-07 11:51
Probeer het eens door de datum (Showdate) tussen ## te zetten.
code:
1
2
"SELECT * FROM TblBooking WHERE Room='Erasmus Room ' 
AND date=#" & showdate & "#"

Lekker woordenboek, als je niet eens weet dat vandalen met een 'n' is.

Pagina: 1