Purpose
Adds new rows to a table by directly specifying the row data to be inserted (valued form) or by retrieving the new row data from another table (selected, or INSERT … SELECT form).
The syntax below describes the valued and selected forms of the statement, where subquery represents the SELECT portion of the selected form.
For information about syntax that is compatible with temporal tables, see ANSI Temporal Table Support and Temporal Table Support.
- Scalar Subqueries
- MERGE
- SQL Functions, Operators, Expressions, and Predicates
- “CREATE ERROR TABLE” in SQL Data Definition Language
- ANSI Temporal Table Support
- Temporal Table Support
- SQL Geospatial Types
- Database Administration
- Utilities
- Teradata FastLoad Reference
- Teradata MultiLoad Reference
- Teradata Parallel Data Pump Reference
Required Privileges
- You must have the INSERT privilege on the referenced table or column set.
- To insert rows into a table through a view, you must have the INSERT privilege on the view. Also, the immediate owner of the view must have the INSERT privilege on the underlying view, base table, or column set. The immediate owner of the view is the database in which the view resides.
- To insert rows into a table using a query specification, you must have the SELECT privilege for the referenced tables or views.
- When you perform an INSERT with a WHERE clause predicate that requires READ access to an object, you must have the SELECT privilege on the accessed object.
The privileges required for an INSERT … SELECT … LOGGING ERRORS operation are the same as those for INSERT … SELECT operations without a LOGGING ERRORS option except that you must also have the INSERT privilege on the error table associated with the target data table for the INSERT … SELECT operation.