Avatar billede brynil Nybegynder
11. december 2002 - 16:35 Der er 11 kommentarer og
1 løsning

Simpel Query eller er den?

Jeg troede det sku være 'a piece of cake' men kan ikke få det til at virke. Kan ikke rigtig se nogen informationer om emnet. Kan dette lade sig gøre:

SELECT * FROM tabel1 WHERE x > 0

Jeg vil gerne kunne anvende en stored procedure hvor kolonnen kan vælges frit. Herefter skal jeg have udlistet alle rows fra x-kolonnen hvor værdien er større end 0.

Fejlmelding: "Udtryk stavet forkert eller for komplekst...osv."

Er der en anden måde at gøre det på uden at skulle oprette 7 forskellige sp'er?
Avatar billede terry Ekspert
11. december 2002 - 16:44 #1
This IS access so when you say stored procedure I assume we are either talking MSDE or SQL Server, is that correct?
Avatar billede brynil Nybegynder
11. december 2002 - 16:51 #2
No - I mean Query in Access. Sorry!
Avatar billede terry Ekspert
11. december 2002 - 16:54 #3
If we are NOT talking JET (Access) queries then I think it will be necessary to build your SQL Dynamically depending on X. In normal Access databases where the query is in thd .MDB file then you could use (I think)

SELECT * FROM tabel1 WHERE [Enter Field Name] > 0

But when using MSDE or SQL server the query is actually a VIEW placed in the SQL server and NOT in the access dB
Avatar billede oasen Nybegynder
11. december 2002 - 16:55 #4
Prøv lige at paste dit query her...
Avatar billede terry Ekspert
11. december 2002 - 16:58 #5
I have just tried it and you cant NOT!
You can use this method for the criteria but not for the actual field name.
So your going to have to build your query dynamically in code!
Avatar billede brynil Nybegynder
11. december 2002 - 17:06 #6
Terry >> I thaught so. But when you say building dynamically, do you mean from asp.code or similar or somewhat else? I want to make the query run by the use of Access only. Im not extremely sharp in Access, so can you give me a hint of what to use?!

Oasen >> Den jeg har angivet er faktisk den jeg forsøger at køre, bortset fra tabel-navnet.
Avatar billede terry Ekspert
11. december 2002 - 17:07 #7
If you are in ASP then yes, but if you are using Access for making your forms then you can use VBA code, but the problem is the same :o)
Avatar billede brynil Nybegynder
11. december 2002 - 17:12 #8
Ok thanks Terry. I know how to do it in asp and .net, but im a little surprised I can't use a variable like this from inside Access.
I'll make some more queries!
Avatar billede terry Ekspert
11. december 2002 - 17:15 #9
OK, but I dont think you need to make more queryies!

Now I dont know ASP but something like this should work

sSQL = "SELECT * FROM tabel1 WHERE " & YouHaveToGetTheFieldNameHere & " > 0"
Avatar billede terry Ekspert
11. december 2002 - 17:16 #10
YouHaveToGetTheFieldNameHere  is a variable in your ASP
Avatar billede brynil Nybegynder
11. december 2002 - 17:24 #11
Yes - I've used it before. I think the problem might be that the variable is receiving its value before the query is executed when using ASP.
This one is ok: SELECT * FROM tabel1 WHERE R1 > x

..so it seem as if I can't do the variable in the first part of the sql: SELECT * FROM tabel1.., for some reason.
Avatar billede brynil Nybegynder
11. december 2002 - 17:26 #12
Last one should be 'SELECT * FROM tabel 1 WHERE x..,'
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester