Appendix B. Snowflake Object Naming Best Practices

General (Character Related)

  • Create names that are brief and meaningful. Use abbreviations when possible, especially if the length exceeds eight characters. Although a name can contain up to 128 characters, it’s best not to exceed 24 characters. Rather than use more characters in the name, consider using comments or tags as descriptors.

  • Avoid mixed-case letters. If you elect to use something other than all uppercase or all lowercase letters, you’ll need to include quotes around the name because, without quotes, Snowflake will convert the name to all uppercase.

  • Avoid whitespace. Use an underscore (_) instead. Otherwise, this could cause problems with some third-party applications.

  • Use singular terms for both tables and fields. For example, a Customer table could have a CustomerID field.

  • Avoid special characters such as #, - , @, and !. Even though some are allowable in Snowflake, they can cause problems with some third-party applications, so it’s best to avoid them.

General (Not Character Related)

  • Use the recommended Snowflake system-defined role to create objects. For example, use the SYSDAMIN role to create databases and virtual warehouses. For more details, refer to Figure 5-12 in Chapter 5.1

  • Use the syntax IF NOT EXISTS when creating new objects.2

  • Standardize on language, choosing a region or dialect such as American English. For example, use COLOR instead of COLOUR.

  • Avoid prepositions. For example, use ...

Get Snowflake: The Definitive Guide now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.