gaynes
asked on
Cannot find table or query error with SQL connection string in query and ODBC table
I an getting the error cannot find the input table or query ".." when trying to run my query. The query uses ODBC linked tables and local tables. I put the connection string in the query. The name is correct. The ODBC connection is not a trusted connection. Everything works fine in my test environment with a standard ODBC setup. These are read-only tables from another server. The tables open just fine and display data. These queries are used in reports and display fields on forms. Without the connection string, the user is asked for the login a zillion times. I attached a screen shot of the error and the SQL in the query. What am I missing? Is there another setting I have to do on either side? I don't control the server. Thanks!
Doc1-3.doc
Doc1-3.doc
You seem to be missing end-quotes to terminate the connection string before the WHERE clause.
Putting connection string in the query is highly unusual; I'm not clear why you don't simply use linked tables or passthru queries.
ASKER
The SQL is Access written. I do use linked tables, but since it isn't a trusted connection I have to use the connection string. I don't think a passthru query would act any differently.
>I do use linked tables, but since it isn't a trusted connection I have to use the connection string.
Actually, the connection string is assembled from the DSN and the query. You can put the userid, password, and database in the DSN, then you don't need any of it in the query. Furthermore, then you can also link to the tables without prompting for that information.
Actually, the connection string is assembled from the DSN and the query. You can put the userid, password, and database in the DSN, then you don't need any of it in the query. Furthermore, then you can also link to the tables without prompting for that information.
ASKER
That is what I did. It is in the query properties.It still gives the error message. If you look at my example you can see that.
When I look at the example, I see a userid, password and database originating in the query. I'm suggesting that you specify those things in the DSN, instead. That way you can link to the tables via the DSN without being prompted for userid/password. The query can just reference the tablename without the IN clause and the connection string overrides embedded in it.
ASKER
The person who set it up (IT person at the client) tells me he did. Since it is not a trusted connection, it will not retain the password so has to be put here as well. The tables can be opened with no problem outside the query. They are linked via ODBC.
I apologize for haranging you so much about the DSN since it doesn't directly cause your problem. Have you tried adding the end-quote as suggested earlier?
As for the getting the connection string out of the query: it can be done, but it's a little more complicated than I led you to believe, since the password you enter on the ODBC control panel is not saved. Let me know if you want to pursue
As for the getting the connection string out of the query: it can be done, but it's a little more complicated than I led you to believe, since the password you enter on the ODBC control panel is not saved. Let me know if you want to pursue
ASKER
The end quote is not an issue as the query was created in Access and works. The password works. The issue is that now it says it doesn't see a table that is there, is spelled correctly, and does open.
On the user's machine Open the linked table in design view and click past all the warnings that you cannot change it. Click on the title bar an then View properties. What appears in the Description property?
ASKER
I have to get to the client's machine. I won't be able to do that until Monday.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.