FAQ: What determines which tables are listed when you connect to a database?
What determines which tables are listed when you connect to a database?
When you connect to a database via SQL Connect in ArcView 3.1, it will only list the tables you own, assuming the database supports table ownership, otherwise all the tables will be listed.
When you connect to a database via SQL Connect in ArcView 3.2, you will see those same tables, plus all synonyms that you own.
When you connect to a database via the Database Access extension in ArcView 3.2, you will see all the tables and synonyms in the database, regardless of who owns them.
Even if a table is not listed in the SQL Connect dialog box, you can still bring it into ArcView with a properly formatted Select statement, as long as the user you logged in as when connecting to the database has the proper permissions to that table. If the table you wish to bring into your project is not listed, and you know the owner name for that table, type that name in the Owner field of the dialog box and press the Enter key. This will cause all the tables owned by that user to be appear in the Tables list (as well as Synonyms in ArcView 3.2). If you are not sure what the owner name is for a particular table, or you just want to see all the tables in the database, type a percent sign in the Owner field and press the Enter key. You can then construct your Select statement in the usual fashion by double-clicking the tables and fields you want to bring into ArcView.
If you enter a percent sign in the owner field, each table name in the tables list will be preceded by "%." For example, a table named Contracts will be listed as %.Contracts. Those percent signs cause an ODBC error followed by a syntax error, unless you first edit the SELECT statement. To fix the syntax, strip the %. from the table name in both the Select clause and the From clause, and the Where clause if your Select statement has one. You can then click the Query button and bring the table into your project.