Work with worksheets in Snowsight¶
Worksheets provide a powerful and versatile method for running SQL queries or Python code within the Snowflake platform, as well as performing other Snowflake data loading, definition, and manipulation tasks.
After you open a worksheet in Snowsight, you can do any of the following:
Browse and open worksheets¶
When you open a worksheet, you can view and manage other worksheets in the Worksheets explorer. The Worksheets explorer also allows you to search for specific worksheets.
Preview worksheet contents¶
To preview the contents of a worksheet, you can hover over the name of the worksheet in the Worksheets explorer. The preview also shows the role used to run the worksheet.
From the preview, you can also copy the contents of the worksheet. Hover over the worksheet contents preview and select the Copy button that appears.
Perform tasks with keyboard shortcuts¶
Snowsight provides keyboard shortcuts to help you quickly navigate and edit queries in worksheets. For example, you can move your cursor within a worksheet, perform find and replace, copy lines, format queries, and more using hotkeys.
To see all available keyboard shortcuts, open a worksheet and press CMD + SHIFT + / on a Mac keyboard or CTRL + SHIFT + / on a Windows keyboard.
Change the context for a worksheet¶
When you create a worksheet, you specify the role and warehouse used to execute the worksheet’s contents. This information is referred to as worksheet context, is preserved for future sessions, and is shared with all users of the same worksheet.
Note
The role selector lets you choose your primary role. To enable secondary roles in a SQL worksheet, run USE SECONDARY ROLES. To determine whether secondary roles are active in your current session, call the CURRENT_SECONDARY_ROLES function CURRENT_SECONDARY_ROLES.
The role context for a worksheet determines which operations can be performed on Snowflake objects based on the access control privileges granted to the role.
To set the context for a worksheet, do the following:
Sign in to Snowsight.
Select Projects » Worksheets to open the list of worksheets.
Open a worksheet.
Open the context selector.
Select a role to run the worksheet as.
Select a warehouse that the role has privileges to use.
Select anywhere outside the drop-down to close the context selector.
Note
Each worksheet has a unique session and can use roles different from the role you select in the user menu (your active role). Changing your active role does not change the role assigned to the worksheet with the context selector.
Resume or resize a warehouse¶
Before or after you run your worksheet, you might need to resume or resize your warehouse.
Note
You must have MODIFY or OWNERSHIP privileges on the warehouse to alter warehouse details.
To view or adjust warehouse details using the context selector, do the following:
Sign in to Snowsight.
Select Projects » Worksheets to open the list of worksheets.
Open a worksheet.
Open the context selector.
Select the Show warehouse details icon.
For the Status option, select the status and choose Resume if the warehouse is suspended.
For the Size option, select the size and choose a different size.
Select anywhere outside the drop-down to close the context selector.
Manage worksheets¶
You can manage worksheets in Snowsight from the worksheet tab or the Worksheets explorer. To access the worksheet tab menu, open a worksheet, hover over the tab, and select the . To access the Worksheets explorer, hover over a worksheet name and select the .
The actions available in each menu are based on your current role. Depending on your permissions, you can do the following:
Rename, delete, or move a worksheet (requires Edit or Ownership permissions).
Organize worksheets by moving them into folders or a dashboard.
Import SQL from an external file.
Format your queries.
Search for other worksheets.
Duplicate a worksheet (any role).
Tip
You can hover over a worksheet to preview its contents.
You can identify which worksheets are open in tabs by referencing the worksheet icon. A solid icon indicates that the worksheet is currently open. To access menu options, hover over a worksheet name and select the ellipsis visible.
Manage worksheet history and versions¶
Any local edits you make to a worksheet are automatically saved every three seconds but remain visible only to you. When you run a SQL query or execute code in a worksheet, the latest version is updated and shared with all collaborators. You can also view past versions of a worksheet and optionally copy details from any version. For more information, see Switch worksheet versions.
When making changes to worksheets and managing worksheet versions, consider the following:
When you share a worksheet with other users, users with edit permissions can view past versions of the worksheet. All users that you share a worksheet with can view up to 10,000 rows of the results for the most recent version of the worksheet.
Whenever someone with permissions runs a worksheet, a new version of the worksheet is saved.
If you make changes to the worksheet and they seem to disappear, use the version history to open the saved draft with your changes.
The most recently run version of the worksheet is the version visible to collaborators.
If you make changes to the worksheet that you want to be visible to the users with whom you shared the worksheet, you must run the worksheet.
If multiple users edit and run a shared worksheet at the same time, each run of the worksheet creates a new version. The most recently run version of the worksheet is the one visible when you open or refresh the worksheet.
Switch worksheet versions¶
To view past versions of a worksheet, do the following:
Sign in to Snowsight.
Select Projects » Worksheets to open the list of worksheets.
Open the worksheet.
Select Code Versions for the worksheet.
From the list of worksheet versions, select the timestamp of the version that you want to view.
Review and optionally copy the worksheet details for that version.
Select Close to return to the current version of the worksheet.
To view the results of a past worksheet run, view the Query History for the worksheet. See View query history.
Stored results for past worksheet versions¶
Note
Available to most accounts. Accounts in U.S. government regions, accounts using Virtual Private Snowflake (VPS), and accounts that use Private Connectivity to access Snowflake continue to see query results limited to 10,000 rows.
All results for queries executed in worksheets are available for up to 24 hours. After 24 hours, you must run your query again to view results.
To support contextual statistics and sharing worksheet results, the 25 latest query results are cached for up to 90 days. This cache is included in the data storage usage for your account.
Recover worksheets owned by a dropped user¶
If you drop a user, you can recover up to 500 of the worksheets owned by that user. To recover the worksheets, do the following:
Download recovered worksheets owned by a dropped user.
Create worksheets from a SQL file to add the recovered worksheets back to Snowflake.
If you want to change ownership or retain access to worksheets before dropping a user, ask that user to share the worksheets. See Share worksheets and folders.
Download recovered worksheets owned by a dropped user¶
To recover worksheets owned by a dropped user, download a .tar.gz
archive file of up to 500 worksheets owned by that user.
Note
You must be granted the ACCOUNTADMIN role to recover worksheets of dropped users.
Sign in to Snowsight.
Select Projects » Worksheets.
In the dialog box, enter the username of a dropped user in your account.
Important
The case and spelling of the username must exactly match the username as it was stored in Snowflake.
Select Recover.
Your web browser downloads a
.tar
file containing up to 500 worksheets. If the dropped user has more than 500 worksheets, only the 500 most recently modified worksheets are downloaded.
After downloading worksheets owned by a dropped user, add the recovered worksheets to Snowsight by creating worksheets from the SQL files.
You must expand the downloaded .tar
file into a folder of .sql
files before you can add recovered worksheets to
Snowsight. You can only add one worksheet at a time to Snowsight, and the user who adds the recovered worksheets to
Snowsight becomes the new owner of the worksheets.
See Create worksheets from a SQL file for details.
Considerations for recovering worksheets owned by dropped users¶
Only the title and contents of the most recently executed version of a worksheet are recovered. Worksheet version history, sharing recipients and permissions, query results, and worksheet metadata are not recovered.
A maximum of 500 worksheets are recovered. For dropped users with more than 500 worksheets, only the 500 most recently modified worksheets are recovered.
Only worksheets in Snowsight are recovered. Worksheets in Classic Console owned by dropped users cannot be recovered with this method.
If multiple dropped users have the same username, worksheets owned by all dropped users with that username are recovered.
If the worksheet recovery fails for unexpected reasons, contact Snowflake Support.
Internal Snowflake objects for worksheets¶
Snowflake creates the following internal objects to support using worksheets in Snowsight:
Object Type |
Name |
---|---|
Security integration |
WORKSHEETS |
Blobs |
WORKSHEETS_APP |
Database |
WORKSHEETS_APP |
User |
WORKSHEETS_APP_USER |
Roles |
APPADMIN, WORKSHEETS_APP_RL |
These internal objects are used to cache query results in an internal stage in your account. This cached data is encrypted and protected by the key hierarchy for the account.
The limited privileges granted to the internal role only allow Snowsight to access the internal stage to store those results. The role cannot list objects in your account or access data in your tables.
The Snowsight user and role are returned when you query the USERS and ROLES views, respectively, in the ACCOUNT_USAGE schema in the SNOWFLAKE shared database. SHOW <objects> statements do not return these internal objects.