我有一个INSERT语句的CTE表达之后,如下Insert语句CTE表达后
WITH d as
(Select t1,t2 from test)
Insert into test2 (t1,t2) select t1,t2 from d
这个表达式工作正常,当我运行此作为查询,但我需要的时候我对这个并创建一个视图在视图中使用它我得到错误“关键字'INSERT'附近的语法错误'”可能是什么问题?
我有一个INSERT语句的CTE表达之后,如下Insert语句CTE表达后
WITH d as
(Select t1,t2 from test)
Insert into test2 (t1,t2) select t1,t2 from d
这个表达式工作正常,当我运行此作为查询,但我需要的时候我对这个并创建一个视图在视图中使用它我得到错误“关键字'INSERT'附近的语法错误'”可能是什么问题?
如果你想创造超过你喂插入查询视图,使用:
CREATE VIEW
myview
AS
WITH d as
(
SELECT t1, t2
FROM test
)
SELECT t1, t2
FROM d
然后,您可以使用该视图作为源INSERT
,就像任何其他表:
INSERT
INTO test2 (t1, t2)
SELECT *
FROM myview
在RDBMS你为报表做东西
你可以把它们放进Stored Procedure
或Trigger
其他动作只读
你可以把这个变成View
或Function
一个VIEW
是用于存储SELECT
的名称。你不能改变任何东西...
你不能创建一个插入语句的视图 – Quassnoi