16
%.*s not found. Specify owner.objectname or use sp_help to check whether the object exists (sp_help may produce lots of output).
This error occurs when Adaptive Server tries to use an object name that does not exist. If the object does exist, you may need to include the owner’s name in the object name.
If the object is not owned by the user who is attempting to access it, and it is not owned by the database owner (“dbo”), all references to it must include the owner name. For example, if “user1” creates a table called test, all other users must prefix the table name with the owner name “user1” every time they refer to the object. The complete name in this example is user1.test. This requirement is based on Adaptive Server’s naming convention for database objects:
<database>.<owner>.<object_name>.<column_name>
The default value for <database> is the current database and the default value for <owner> is the current user. Remember that the owner is part of the object name and it is therefore possible for two different users to have two different tables with the same <object_name> in the same database, for example, user1.test and user2.test. Refer to the Transact-SQL User's Guide for more details on naming conventions.
Temporary tables reside in tempdb and are automatically dropped when the user process or Adaptive Server connection that created them is exited. Furthermore, users cannot share temporary tables, even if they are created by the “dbo.”
Including the fully qualified object name in an application may complicate the maintenance of the application. For example, if all references to a table include the database name, changing the database name could become quite difficult.
To resolve this error, refer to one of the following sections, depending on how much you know about the object in question.
Use the sp_help procedure to display the owner (if the procedure is executed with no parameters), or query the system catalog to determine the object's owner and type. For example, to determine the name and type of the object table1, use the following query:
1> select owner = user_name(uid), name, type 2> from sysobjects where name = "table1" 3> go
If no rows are returned by this query, the object may reside in a different database or may not exist at all.
Avoid this error using either procedure:
Include the owner’s name in the object name. For example:
1> select * from user1.table1 2> go
Have the “dbo” create the object. This allows any user to find the object without specifying an owner name.
The error can be avoided by:
Moving to the correct database with the use <database_name> command.
Fully qualifying the object name with the database name. For example:
1> select * from database1.user1.table1 2> go
The owner name is not needed if you own the object or if it is owned by the “dbo.” For example:
1> select * from database1..table1 2> go
The appropriate permissions must also be set to allow access to this object. If these permissions are not provided, a 229 or 230 error results.
All versions