Creating An INSTEAD OF DML Trigger : Updatable View « View « SQL Server / T-SQL

SQL Server / T-SQL
1. Aggregate Functions
2. Analytical Functions
3. Constraints
4. Cursor
5. Data Set
6. Data Type
7. Database
8. Date Timezone
9. Index
10. Insert Delete Update
11. Math Functions
12. Select Query
13. Sequence
14. Store Procedure Function
15. String Functions
16. Subquery
17. System
18. Table
19. Table Joins
20. Transact SQL
21. Transaction
22. Trigger
23. View
24. XML
Java
Java Tutorial
Java Source Code / Java Documentation
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
C# / C Sharp
C# / CSharp Tutorial
ASP.Net
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
PHP
Python
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
SQL Server / T-SQL » View » Updatable View 
Creating An INSTEAD OF DML Trigger

 

4>
5CREATE TABLE employee(
6>    id          INTEGER NOT NULL PRIMARY KEY,
7>    first_name  VARCHAR(10),
8>    last_name   VARCHAR(10),
9>    salary      DECIMAL(10,2),
10>    start_Date  DATETIME,
11>    region      VARCHAR(10),
12>    city        VARCHAR(20),
13>    managerid   INTEGER
14);
15> GO
1INSERT INTO employee VALUES (1'Jason' ,  'Martin', 5890,'2005-03-22','North','Vancouver',3);
2> GO
1INSERT INTO employee VALUES (2'Alison',  'Mathews',4789,'2003-07-21','South','Utown',4);
2> GO
1INSERT INTO employee VALUES (3'James' ,  'Smith',  6678,'2001-12-01','North','Paris',5);
2> GO
1INSERT INTO employee VALUES (4'Celia' ,  'Rice',   5567,'2006-03-03','South','London',6);
2> GO
1INSERT INTO employee VALUES (5'Robert',  'Black',  4467,'2004-07-02','East','Newton',7);
2> GO
1INSERT INTO employee VALUES (6'Linda' ,  'Green' , 6456,'2002-05-19','East','Calgary',8);
2> GO
1INSERT INTO employee VALUES (7'David' ,  'Larry',  5345,'2008-03-18','West','New York',9);
2> GO
1INSERT INTO employee VALUES (8'James' ,  'Cat',    4234,'2007-07-17','West','Regina',9);
2> GO
1INSERT INTO employee VALUES (9'Joan'  ,  'Act',    6123,'2001-04-16','North','Toronto',10);
2> GO
1>
2select from employee;
3> GO
id          first_name last_name  salary       start_Date              region     city                 managerid
----------- ---------- ---------- ------------ ----------------------- ---------- -------------------- -----------
          Jason      Martin          5890.00 2005-03-22 00:00:00.000 North      Vancouver                      3
          Alison     Mathews         4789.00 2003-07-21 00:00:00.000 South      Utown                          4
          James      Smith           6678.00 2001-12-01 00:00:00.000 North      Paris                          5
          Celia      Rice            5567.00 2006-03-03 00:00:00.000 South      London                         6
          Robert     Black           4467.00 2004-07-02 00:00:00.000 East       Newton                         7
          Linda      Green           6456.00 2002-05-19 00:00:00.000 East       Calgary                        8
          David      Larry           5345.00 2008-03-18 00:00:00.000 West       New York                       9
          James      Cat             4234.00 2007-07-17 00:00:00.000 West       Regina                         9
          Joan       Act             6123.00 2001-04-16 00:00:00.000 North      Toronto                       10
1>
2>
3>
4CREATE VIEW vw_employee
5> AS
6SELECT ID, first_Name
7FROM employee
8> GO
1>
2CREATE TRIGGER trg_vw_employee
3> ON vw_employee
4> INSTEAD OF
5INSERT
6> AS
7> SET NOCOUNT ON
8INSERT employee(ID, first_Name)
9SELECT i.ID, i.first_Name
10FROM inserted i
11> GO
1>
2INSERT vw_employee(ID, first_Name)VALUES (10,'P')
3>
4select from employee
5> GO
id          first_name last_name  salary       start_Date              region     city                 managerid
----------- ---------- ---------- ------------ ----------------------- ---------- -------------------- -----------
          Jason      Martin          5890.00 2005-03-22 00:00:00.000 North      Vancouver                      3
          Alison     Mathews         4789.00 2003-07-21 00:00:00.000 South      Utown                          4
          James      Smith           6678.00 2001-12-01 00:00:00.000 North      Paris                          5
          Celia      Rice            5567.00 2006-03-03 00:00:00.000 South      London                         6
          Robert     Black           4467.00 2004-07-02 00:00:00.000 East       Newton                         7
          Linda      Green           6456.00 2002-05-19 00:00:00.000 East       Calgary                        8
          David      Larry           5345.00 2008-03-18 00:00:00.000 West       New York                       9
          James      Cat             4234.00 2007-07-17 00:00:00.000 West       Regina                         9
          Joan       Act             6123.00 2001-04-16 00:00:00.000 North      Toronto                       10
         10 P          NULL               NULL                    NULL NULL       NULL                        NULL
1>
2> drop trigger trg_vw_employee
3> GO
1> drop view vw_employee
2> GO
1>
2> drop table employee;
3> GO
1>

 
Related examples in the same category
1. Data modification via views
www.java2java.com | Contact Us
Copyright 2010 - 2030 Java Source and Support. All rights reserved.
All other trademarks are property of their respective owners.