I have inherited a MS database, to work from, this database also links to other programs so I don’t want to change the database tables itself.
I’m using Visual Basic 2010,
What I need to do is have a range of filters on this table and then one extra filter entered by the user.
e.g. they enter ’50’ and range ‘5’ I need to search the dataset using the range of ’45 to 55′
This is my code so far for the dataset:
SELECT [CUTTER NO]
,CUTTER_ID
,[SIZE-Inches]
,[MM-Across]
,[MM-Round]
,TYPE
,[LEADING EDGE]
,[CUTTER TYPE]
,ACROSS
,ROUND
,[WIDTH PAPERmm]
,[GAPS ACROSSmm]
,[GAPS ROUNDmm]
,[Serial Number]
,[T G]
,Repeat
,[Repeat MM]
,[L&G]
,Notes
FROM [Cutter List]
WHERE (TYPE <> 'DISCONTINUED')
AND (TYPE <> 'SPEC')
AND (CUTTER_ID <> NULL)
AND ([CUTTER TYPE] = 'MP')
AND (TYPE <> 'BUTT')
ORDER BY CUTTER_ID, [MM-Across]
What I need to type into this SQL is:
WHERE [MM-Across] LIKE @[MM-Across] and [MM-Round] LIKE @[MM-Round]
Which from what I can tell on the net is wrong as I cannot have [] in a where.
I even tried :
SELECT [MM-Across] AS mmacross
FROM [Cutter List]
WHERE ('mmacross' LIKE '@mmacross')
This it accepts but I get an different error appear saying
“The Schema returned by the new query differs from the base query.”
What am I doing wrong? I don’t understand the last error or how to avoid this.
Two things:
You can definitely have brackets “[..]” in WHERE clauses, they just have to be in the correct places (just like anywhere else), and
You cannot use the brackets in variable or parameter references, and that means that, unlike columns, you cannot have special characters in their names, like “-” in “@MM-Across”, so just change your parameter names to something like “@MM_Across”.
Note that the column names are fine, it’s your parameter and/or variable names that you have to change (I cannot tell which these are from your snippet).
So instead of this:
Try this:
Of course, you will also have to change the parameter/variable names wherever they are declared and passed in. If you post the code that does this, I can show you how to change that also (thoguh it may be obvious by now).