gpt4 book ai didi

mysql - 如何检查表 mysql.proc 是否存在

转载 作者:行者123 更新时间:2023-11-29 14:53:40 27 4
gpt4 key购买 nike

我正在开发一个 WPF 应用程序,如果安装了 MySQL,该应用程序也会安装,所以在安装之前我想检查mysql.proc表是否存在。我用谷歌搜索了一下,最后得到了一个查询

select * from information_schema.Tables 
where Table_schema = Schema() and Table_Name = 'mysql.proc'

此查询返回一个空行。

我也尝试过简单的选择语句从mysql.proc中选择*,这会返回一个包含所有存储过程名称的表,但如果该表不存在,则会在 C# 代码中引发异常。

那么有没有什么方法可以让我从 C# 发起查询并根据 mysql.proc 表是否存在获取 bool 值?

最佳答案

尝试从 mysql LIKE 'proc' 中显示表。如果没有结果行,则该表不存在。如果有一行,则该表存在。请注意,这种方法不能跨 RDBMS 移植,尽管这似乎不是您关心的问题。

对于您的第一个查询,SCHEMA()返回默认数据库,因此如果不是“mysql”,查询将失败。同样,Table_Name 列中的数据不包含数据库名称,因此与“mysql.proc”进行比较始终会失败。

关于mysql - 如何检查表 mysql.proc 是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5166644/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com