The errata list is a list of errors and their corrections that were found after the product was released. If the error was corrected in a later version or reprint the date of the correction will be displayed in the column titled "Date Corrected".
The following errata were submitted by our customers and approved as valid errors by the author or editor.
| Version |
Location |
Description |
Submitted By |
Date submitted |
Date corrected |
|
Page You can create stored functions in JavaScript
Extending SQL with Stored Procedures and UDFs |
You can create stored functions in JavaScript
Should be
You can create stored procedures in JavaScript
Note from the Author or Editor: Page82: Replace "You can create stored functions in JavaScript and UDFs in SQL, JavaScript, Python, and Java languages." with the following sentences: "You can create stored procedures natively using JavaScript or by Snowflake scripting and using Snowpark, you can create stored prrocedures using Java, Python, or Scala. You can create UDFs using SQL, JavaScript, Python, and Java languages."
|
Anonymous |
Sep 02, 2022 |
Dec 16, 2022 |
|
Page Chapter 3 Extending SQL with Stored Procedures and UDFs
UTF |
should be UDF
Note from the Author or Editor: Page82: Replace "UTFs" with "User-defined table functions (UDTFs)"
|
Anonymous |
Sep 02, 2022 |
Dec 16, 2022 |
|
Page Page 82
Table 3-2 |
"How to reference" line:
For named stage: add the @symbol, should be "@<stage_name>"
For table stage: replace the "$" symbol with the "%" symbol
"Supports setting file formats" line:
For external stage: replace "No" with "Yes"
|
Joyce Kay Avila |
Sep 08, 2022 |
Dec 16, 2022 |
|
Page Page 38
4th paragraph |
Current statement reads as "The following SQL script will create a medium-sized virtual warehouse, with four clusters ...". The word "clusters" should be changed to "servers".
Note from the Author or Editor: Yes, that is correct. "clusters" should be changed to "servers".
|
Michael Winterbottom |
Jan 25, 2023 |
|
|
Page Page 49
Caption for Figure 2-20 |
Currently reads as "The virtual warehouse cache in the Snowflake cloud services layer".
Should read as "The virtual warehouse cache in the Snowflake compute layer".
Note from the Author or Editor: Figure 2-20 description needs to have "cloud services layer" changed to "compute layer".
|
Michael Winterbottom |
Jan 30, 2023 |
|
|
Page Page 78
Last code example on page |
Currently reads as ...
"DELETE FROM <Base_Table> WHERE <Column_Name> >
(SELECT AVG <Column> FROM <View_Name>);"
Should read as ...
"DELETE FROM <Base_Table> WHERE <Column_Name> >
(SELECT AVG <Column_Name> FROM <View_Name>);"
Note from the Author or Editor: <Column> needs to be changed to <Column_Name>
|
Michael Winterbottom |
Jan 30, 2023 |
|
|
Page Page 95
Code example near middle of page |
Code example currently reads as ...
ALTER TASK IF EXISTS tsk_15 SUSPEND;
However the task name is 'tsk_wait_15' ... and therefore the above should be:
ALTER TASK IF EXISTS tsk_wait_15 SUSPEND;
Note from the Author or Editor: Change tsk_15 to tsk_wait_15 on page 95 code section
|
Michael Winterbottom |
Feb 01, 2023 |
|
|
Page Page 170
2nd paragraph |
Currently reads as ...
"We also can attempt to assign to a user a default role that does exist:"
Should read as (insert the word "not") ...
"We also can attempt to assign to a user a default role that does not exist:"
|
Michael Winterbottom |
Feb 14, 2023 |
|
|
Page Page 332
Figure 10-17 |
Label in the blue box currently reads as ...
Data provide account
Should read as ...
Data provider account
|
Michael Winterbottom |
Mar 02, 2023 |
|
|
Chapter 6 |
Resource Monitor Credit Quota
An account-level resource monitor credit quota, stated in terms of Snowflake credits, is based on the entire amount of cloud service usage. However, the account-level credit quota does not consider the daily 10% adjustment for cloud services. Only an account-level resource monitor can monitor credit usage for virtual warehouses that provide cloud services. Resource monitors, at the virtual warehouse-level, can only be created for user-created and managed virtual warehouses.
-> instead of "However, the account-level credit quota does not consider" the text should be "However, the warehouse-level credit quota does not consider".
|
Anonymous |
May 30, 2022 |
Aug 10, 2022 |
| Printed |
Page 71
4th paragraph |
Materialized tables, announced in June 2022, has been renamed to dynamic tables.
|
Joyce Kay Avila |
Dec 13, 2022 |
Dec 16, 2022 |
|
Page 81
Figure 3-23. The objects hierarchy for Snowflake stages |
The text says "Internal named stages and external stages can be created as either a permanent or a temporary stage."
However, Figure 3-23 only puts an asterisk against "Internal stage type" as being either permanent or temporary.
Then, Table 3-2 says that "External stage" cannot be temporary.
They all disagree with each other!
Note from the Author or Editor: (1) The text is correct.
(2) Figure 3-23 needs to have the asterisk removed from the "Internal stage type" circle. Asterisks should be placed next to "External stage type" and "Internal named stage type" and
(3) Table 3-2 needs to be corrected as follows: For the line "Temporary type possible?", the "User stage" value should be "No", the "Table stage" value should be "No" and the "External stage" value should be "Yes".
|
John Rotenstein |
Sep 03, 2022 |
Dec 16, 2022 |
|
Page 83
Warning box (2nd last paragraph) |
Figure 3-24 mentions Python UDF, Java UDF, JavaScript UDF and SQL UDF.
However, the warning box says "...you’ll want to use a Snowflake UDF."
However, there is no "Snowflake UDF" mentioned in the diagram or anywhere else in the book. This is confusing. It should simply say "UDF" rather than "Snowflake UDF".
Note from the Author or Editor: Replace "Snowflake UDF" with "UDF".
|
John Rotenstein |
Sep 03, 2022 |
Dec 16, 2022 |
|
Page 86
Last 3 paragraphs |
The two terms "JavaScript secure UDF" and "secure SQL UDF" seem strange --they should have a common type of name.
For example: "JavaScript secure UDF" and "SQL secure UDF"
or: "secure JavaScript UDF" and "secure SQL UDF"
Note from the Author or Editor: Replace "JavaScript secure UDFs" with "secure JavaScript UDFs"
|
John Rotenstein |
Sep 04, 2022 |
Dec 16, 2022 |
|
Page 87
Header at top of page |
"UDTF" in heading should be "UDF"
Note from the Author or Editor: UDTF should remain as is, in the heading. However, to make it more clear, UDTF (a special type of UDF) should be defined in the sentence.
Change to this on page 87 -- "Market basket analysis is a common use of secure SQL user-defined table functions (UDTFs), and that is what we'll be demonstrating."
|
John Rotenstein |
Sep 04, 2022 |
Dec 16, 2022 |
| Printed |
Page 116
Last Sentence |
Need to replace "DataOps" with "DataOps.live"
|
Joyce Kay Avila |
Sep 05, 2022 |
Dec 16, 2022 |
|
Page 131
Paragraph 1 |
"Snowflake's data and time data types are supported ... " should be "Snowflake's date and time data types are supported ... "
Note from the Author or Editor: "data" should be changed to "date"
|
Sergio Ramos-Valverde |
Dec 15, 2025 |
|
|
Page 139
Paragraph 1 |
".. or external snowflake stages, control access to data is easily achieved ..." should be ".. or external snowflake stages, control over access to data is easily achieved ...", or ".. or external snowflake stages, controlling access to data is easy ..."
Note from the Author or Editor: Need to add the word "over" to the sentence -- "...or external Snowflake stages, control over access to the data is easily achieved"
|
Sergio Ramos-Valverde |
Dec 19, 2025 |
|
| Printed |
Page 145
Fourth line from the top |
"Snowflake UDFs" should be replaced with "UDFs supported by Snowflake"
|
Joyce Kay Avila |
Sep 05, 2022 |
Dec 16, 2022 |
|
Page 160
Figure 5-17 |
Two roles assigned to monitoring role are concatenated under one box instead of separate
Note from the Author or Editor: Figure 5-17 has 5 roles assigned to the monitoring role but there should be 6 roles. The RM1_MONITOR and WH1_MONITOR roles appear to have been combined into one when they should instead be two separate roles in the diagram.
|
Sergio Ramos-Valverde |
Dec 22, 2025 |
|
|
Page 161
Final paragraph |
"Next, be sure to grant usage of virtual warehouse VW2_WH directly to IT roles and usage of virtual warehouse VW2_WH to business roles."
Should be
"Next, be sure to grant usage of virtual warehouse VW1_WH directly to IT roles and usage of virtual warehouse VW2_WH to business roles."
Since in the following example, you assign VW1_WH and VW2_WH to different roles
Note from the Author or Editor: VW2_WH needs to be changed to VW1_WH
s/b: "Next, be sure to grant usage of virtual warehouse VW1_WH to IT roles..."
|
Sergio Ramos-Valverde |
Dec 22, 2025 |
|
|
Page 164
First paragraph |
1. "DB2_SCHEMA1_ALL" sub-bullets both reference "DB2.DB1..." objects, should be "DB2.DB2..."
2. All objects referred to in full uppercase except for "SELECT on future tables in schema DB2.DB2_Schema2" - should read "SELECT on future tables in schema DB2.DB2_SCHEMA2"
Note from the Author or Editor: s/b as follows (change DB1 to DB2):
DB2_SCHEMA1_ALL
* ALL on schema DB2.DB2_SCHEMA1
* SELECT on future tables in schema DB2.DB2_SCHEMA1
|
Sergio Ramos-Valverde |
Dec 22, 2025 |
|
|
Page 308
middle of page |
Currently reads as ...
Equality searches use equality predicates such as <column name> = <constant
value> whereas range searches query ranges in time.
The reference to "in time" at the end of the statement, appears to be overly specific (i.e., what about ranges in values not associated with time?). Perhaps alter to read as ...
Equality searches use equality predicates such as <column name> = <constant
value> whereas range searches query ranges of values.
Note from the Author or Editor: change "whereas range searches query ranges in time" to "whereas range searches query ranges of values" ['ranges in time' changed to 'ranges of values']
|
Michael Winterbottom |
Feb 27, 2023 |
|
|
Page 408
Last sentence on the page |
"eternal" should be replaced with "external"
|
Joyce Avila |
Sep 06, 2022 |
Dec 16, 2022 |
|
Page 421
Next to last sentence for #5 |
"in the same in the same" should be replace with "in the same"
|
Joyce Avila |
Sep 06, 2022 |
Dec 16, 2022 |