a
-z
and A
-Z
) or an underscore (_
).a
-z
and A
-Z
), underscores (_
), ASCII digits (0
-9
), or dollar signs ($
)."5_source"
). All characters inside a quoted identifier are taken literally, except double-quotes must be escaped by writing two adjacent double-quotes, as in (e.g., "two""quotes"
).user
, current_timestamp
, current_schema
, current_role
, current_user
, and session_user
. To avoid such issues, you can either avoid naming a column with these words, or qualify it with the table name (as shown in the example below) when such ambiguity happens.
Solution to avoid naming conflicts
wave
, WAVE
, and wAve
are the same identifier in RisingWave. This can cause issues when column names come from data sources that do support case-sensitive names, such as Avro-formatted sources or CSV headers.
To avoid conflicts, double-quote all field names (e.g., "field_name"
) when working with case-sensitive sources.
RisingWave processes unquoted identifiers as in lower cases. If you create a table named WAVE
, it will display as wave
when you choose to list all tables. You can reference it by wave
, WAVE
, or a combination of upper- and lower cases in SQL statements.