dwe0608
asked on
VB6 and Access SQL
Hi Guys
Using vb6 and Access 2007 database ...
I am trying to run a query on a table querying multiple field values as follows:
despite there being data which matches the criteria, no results are being yielded ...
Can someone point me in the right direction ..
MTIA
DWE
Using vb6 and Access 2007 database ...
I am trying to run a query on a table querying multiple field values as follows:
SELECT Contacts.*, Contacts.Company, Contacts.LastName, Contacts.FirstName
FROM Contacts
WHERE (((Contacts.Company) Like "%ast%")) OR (((Contacts.LastName) Like "%dix%")) OR (((Contacts.FirstName) Like "%jac%"))
ORDER BY Contacts.Company;
despite there being data which matches the criteria, no results are being yielded ...
Can someone point me in the right direction ..
MTIA
DWE
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
One of the issues I came across is that I test my sql string inside access and the wildcard "%" is actually "*" in that context - but when in VB, the wildcard prevails as "%".
That is not correct. If you are using JET the wildcard is *. If on the other hand you are using SQL Server then the wildcard is %. In other words, if you are using VB6 against SQL Server than the wildcard is %. So what provider are you using?
Lose the parenthesis and square brackets ([]) and write your code this way:
Then consider losing SELECT * entirely and replace with naming the columns explicitly as in SELECT Col1, Col2, ...
That is not correct. If you are using JET the wildcard is *. If on the other hand you are using SQL Server then the wildcard is %. In other words, if you are using VB6 against SQL Server than the wildcard is %. So what provider are you using?
Lose the parenthesis and square brackets ([]) and write your code this way:
SELECT *
FROM Contacts
WHERE Company LIKE '%kj%'
OR LastName LIKE '%kj%'
OR FirstName LIKE '%kj%'
ORDER BY Company;
Then consider losing SELECT * entirely and replace with naming the columns explicitly as in SELECT Col1, Col2, ...
What could I have done more to merit an "A" grade? Was there something I said or did not say that caused you to grade my solution with a "B"?
ASKER
Thank you for the assistance
The following sql string now works
Open in new window
One of the issues I came across is that I test my sql string inside access and the wildcard "%" is actually "*" in that context - but when in VB, the wildcard prevails as "%".
The actual code is formatted as follows:
Open in new window
I appreciate the assistance
Regards
DWE