ChatGPT for Snowflake: keep quoted names exact

When a Snowflake query says an object does not exist, give ChatGPT the exact identifier, its creation spelling and the current database/schema context. Under Snowflake's default rules, an unquoted saleslines resolves as SALESLINES. A table created as the quoted mixed-case name "SalesLines" needs that exact quoted spelling when referenced.

Changing capitalization without checking quoting can point to a different object. First separate a naming mismatch from a wrong schema or missing privilege; the error alone does not establish which cause applies.

Trace the object name before editing the query

This authored example assumes the default case-resolution behavior, including QUOTED_IDENTIFIERS_IGNORE_CASE set to FALSE. The catalog has a table named "SalesLines" in schema DEMO.PUBLIC, with a quoted column named "orderId". No Snowflake object was created for this example.

Proposed reference What it asks for under these assumptions
DEMO.PUBLIC.saleslines Table SALESLINES
DEMO.PUBLIC."SalesLines" Table SalesLines with exact mixed case
"DEMO.PUBLIC.SalesLines" One identifier containing dots, rather than three object-name parts

If authorized metadata confirms those names and the role can read the table, the intended query is:

select "orderId"
from DEMO.PUBLIC."SalesLines"

The quotes on the column matter too. Unquoted orderId asks for ORDERID under the stated defaults. The Snowflake identifier reference, checked October 24, 2026, explains unquoted uppercase resolution, exact quoted resolution and separate quoting of fully qualified parts.

Include the session rule that can change this answer

Snowflake documents QUOTED_IDENTIFIERS_IGNORE_CASE as a parameter that changes how alphabetic characters inside double quotes are stored and resolved. Ask the person inspecting the account to report its actual value and scope. Do not assume a fresh default describes a session that a tool or administrator has configured.

Changing the parameter is not a harmless spelling repair. Under a different setting, previously created mixed-case names can become difficult to resolve. Preserve the current setting while diagnosing the supplied query and have the database owner decide any naming-policy change.

For a real case, supply the exact error, the query, authorized metadata showing the object's name, the current database and schema, the active role, and the observed parameter. If metadata is unavailable to that role, state that gap. An absent listing is not proof that the object never existed.

Ask for one read-only correction

Diagnose this Snowflake object/identifier resolution problem.
Exact query and error: [PASTE]
Authorized object metadata with exact case/quoting: [PASTE]
Current database, schema and active role: [ENTER]
Observed QUOTED_IDENTIFIERS_IGNORE_CASE value and scope: [ENTER]
Object creation spelling, if known: [PASTE OR UNKNOWN]

Trace each identifier part under the observed setting. Distinguish
unquoted uppercase resolution, quoted exact names, wrong context and
possible privilege limitations. Give the smallest read-only SELECT
correction supported by the evidence. Preserve exact object spelling.
Do not rename/recreate objects, change parameters, grant privileges,
invent catalog entries or claim the query was run. Identify missing
evidence before selecting a cause that the error does not establish.

Check the proposed SELECT in the authorized Snowflake environment and compare its resolved object with the metadata. A query that compiles against another similarly named table is still the wrong repair. Once the object is right, the SQL reporting guide addresses a separate question: whether joins and totals answer the intended business calculation.

Keep reading