July twelve 2019-08-21 13:54 采纳率: 100%
浏览 333
已采纳

使用Navicat小绿叶写储存结构时,查询视图是否存在报错

我写了一个储存过程,这是截图代码部分

这个是代码

BEGIN
    #Routine body goes here...
    SELECT * FROM test2 t2 WHERE t2.name = name;
    -- 创建视图
    if exists (SELECT 1 FROM text.views WHERE name = 'view_test2') then
        DROP VIEW view_test2;
    END if;
    #create view view_test2 
    #AS
    #   SELECT * FROM test2;
    #select *from test2;
END

我运行的时候报错,说是红色标明的表未找到,
报错部分

是什么原因呢?

  • 写回答

2条回答 默认 最新

  • July twelve 2019-08-21 16:34
    关注

    现在解决这个问题了
    代码如下

    BEGIN
        #Routine body goes here...
        SELECT * FROM test2 t2 WHERE t2.name = name;
        -- 创建视图
        drop view if exists view_test2;
        create view view_test2 
        AS
            SELECT * FROM test2;
        select *from test2;
    END
    

    其中drop view if exists view_test2;
    可以实现如果存在view_test2视图,则删除功能

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?