Collections:
Providing Column Names in INSERT Statements in SQL Server
How to provide column names in INSERT Statements in SQL Server?
✍: FYIcenter.com
If you don't want to specify values for columns that have default values, or you want to specify values to columns in an order different than how they are defined, you can provide a column list in the INSERT statement. If a column is omitted in the column, SQL Server applies 3 rules:
The following tutorial exercise gives you some good examples:
INSERT INTO fyi_links (url, id)
VALUES ('sqa.fyicenter.com', 103)
GO
(1 row(s) affected)
INSERT INTO fyi_links (id) VALUES (110)
GO
Msg 515, Level 16, State 2, Line 1
Cannot insert the value NULL into column 'url',
table 'FyiCenterData.dbo.fyi_links'; column does
not allow nulls. INSERT fails.
The statement has been terminated.
SELECT * FROM fyi_links
GO
id url notes counts created
101 dev.fyicenter.com NULL 0 2006-04-30
102 dba.fyicenter.com NULL 0 2007-05-19
103 dba.fyicenter.com NULL NULL 2007-05-19
The first INSERT statement shows that: the order of the columns is reversed; the default value is taken for the un-specified column "created"; the NULL value is taken for the un-specified column "counts", since is has no default value defined and null is allowed.
The second INSERT statement shows the error you get for the un-specified column "url", because it has no default value, and null is not allowed.
⇒ Duplicate Key Error on Primary Key Columns in SQL Server
⇐ DEFAULT - Using Column Default Values in INSERT Statements in SQL Server
2016-11-02, 2555🔥, 0💬
Popular Posts:
How To Fix the INSERT Command Denied Error in MySQL? The reason for getting the "1142: INSERT comman...
How To Format Time Zone in +/-hh:mm Format in SQL Server Transact-SQL? From the previous tutorial, y...
How To Get Year, Month and Day Out of DATETIME Values in SQL Server Transact-SQL? You can use DATEPA...
Where to find answers to frequently asked questions in general areas of Microsoft SQL Server Transac...
How to set database to be READ_ONLY in SQL Server? Databases in SQL Server have two update options: ...