ZandrisMedlem sedan feb. 200160 inlägg Hur konkatinerar man in ett värde i ett tabellnamn?
Har gjort så här:
val = Request.QueryString("val")
SQL = "SELECT * FROM kommentar_"&val&" WHERE objekt_id = "&id&";"
När jagskriver ut SQL-satsen är värdet riktigt:
Response.Write(SQL)
SELECT * FROM kommentar_allergi WHERE objekt_id = 1;
Värdet jag skickar med Querystringen är i detta fall "allergi"
Jag får felmeddelandet:
Error Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)
[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.
/handikappguiden/gbg/info_tillganglighet.asp, line 9
MVH Zandra
@ndersMedlem sedan juni 200032 969 inlägg Är objekt_id av typen text?
I så fall ska du ha apostrofer runt värdet.
SQL = "SELECT * FROM kommentar_"&val&" WHERE objekt_id = '"&id&"';"
Fast det bör nog vara ett tal.
Mvh,
------------------
All your base are belong to me.
LarsGMedlem sedan dec. 200012 464 inlägg OT:
Varför har du byggt upp datamodellen på det sättet? Det är bättre att ha en gemensam tabell med en extra kolumn istället.
------------------
essentitia preter non sans multiplicandum
[Redigerat av LarsG den 16 nov 2001]
ZandrisMedlem sedan feb. 200160 inlägg Anders:
Du menar väl att SQL-satsen ska skrivas så här:
SQL = "SELECT * FROM kommentar_"&val&" WHERE objekt_id = "&id&";"
Då är ju id:et ett tal...
LarsG
Jag har byggt upp tabellen på det viset eftersom kommentar_allergi innehåller en massa olika kolumner... typ Rubrik, Ingress, Kommentar m.m.
Eftersom tabellen kommer att bli väldigt stor (typ kanske 100 000 poster) så vill jag inte slå ihop alla de olika tabellerna (kommentar_syn, kommentar_kognitiv m.m) för då hamnar jag på 1 000 000 poster i stället.
Förstår du vad jag menar?
MVH Zandra
@ndersMedlem sedan juni 200032 969 inlägg Om objekt_id är av typen tal så borde din SQL-fråga stämma alldeles utmärkt.
Dock tyder felmeddelandet på att objekt_id inte är av typen tal, utan förmodligen av texttyp. Kan det stämma?
Mvh,
------------------
All your base are belong to me.
ZandrisMedlem sedan feb. 200160 inlägg Alltså... Ibland står det still i huvudet ;-)
Arbetar för mycket själv ;-)
Tack Anders!
Stirrade mig blind på "&val&"
LarsG:
Vill gärna höra vad du tycker om mitt svar på din fråga.
Det här med databasdesign är inte det lättaste alltid. Det är lätt att stirra sig blind på det med ;-)
Ha en trevlig helg!
MVHZandra
LarsGMedlem sedan dec. 200012 464 inlägg Jo jag förstår vad du menar. Jag tycker ändå att det är fel.
Om du kodar på det viset så förutsätter du att tabellerna har samma struktur och då kan det lika gärna vara en tabell.
1 miljon poster är inte mycket om du har vettiga index.
Nåja, tillbaka till problemet...
som @anders säger problemet har inte med tabellnamnet att göra utan det är något med datatyper.
------------------
essentitia preter non sans multiplicandum