COF-C03 Data Collaboration Practice Question
A consumer account has mounted a shared database from a provider. The consumer's role CONSUMER_ROLE has been granted USAGE on the shared database and its schemas. However, when the consumer tries to query a table in the shared database, they receive an error that the table does not exist. What is the most likely cause?
⚠ Common exam trap
The trap here is assuming that consumer-side USAGE grants are enough to query shared tables, when in fact the provider must grant SELECT on each table to the share.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
The provider has not granted SELECT on the table to the share.
The most likely cause is that the provider has not granted SELECT on the table to the share. Consumers cannot grant privileges on shared objects; they rely on the provider's grants. Without SELECT granted to the share, the table is not accessible, leading to a 'table does not exist' error. The consumer's USAGE grants on the database and schema are necessary but not sufficient.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
The provider has not granted SELECT on the table to the share.
Why this is correct
For a consumer to query a table in a shared database, the provider must grant SELECT on that table to the share. The consumer's USAGE grant on the database and schema is necessary but not sufficient. Without the provider's SELECT grant, the table will not be visible or queryable, resulting in a 'table does not exist' error. This is the most likely cause.
- ✗
The consumer's role lacks the USAGE privilege on the table.
Why it's wrong here
USAGE is not a valid privilege for tables. Tables require SELECT to be queried. Even if USAGE were applicable, it would not grant query access. The error indicates the table is not found, which typically means the provider has not granted SELECT on the table to the share. This option is incorrect because USAGE is not used for tables.
- ✗
The consumer needs to grant SELECT on the table to CONSUMER_ROLE.
Why it's wrong here
Consumers cannot grant privileges on objects in a shared database to their own roles. The provider controls access by granting privileges on objects to the share. The consumer can only grant USAGE on the shared database and schemas to their roles. Attempting to grant SELECT on a shared table would fail because the consumer does not own the object. This option misinterprets the privilege model.
- ✗
The shared database has not been refreshed after the provider added the table.
Why it's wrong here
Shared databases do not require manual refreshes. When the provider grants SELECT on a table to the share, it becomes immediately available to consumers. The absence of a refresh is not the cause of the error. This option incorrectly suggests that shared databases need refreshing, which is not a Snowflake feature.
About these practice questions
Courseiva writes every COF-C03 question from scratch — 280 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. Learn why practice questions differ from exam dumps →
JA
Written and reviewed by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
Last reviewed September 2026 · checked against the official Snowflake exam blueprint
This COF-C03 practice question is part of Courseiva's free Snowflake certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the COF-C03 exam.