检查是否可以插入mysql数据库

mzillmmw  于 2021-06-30  发布在  Java
关注(0)|答案(1)|浏览(233)

假设我正在使用的一个数据库崩溃或有任何其他错误阻止我调用 INSERT 在上面。在那之后,我想知道什么时候数据库的访问已经返回。我要做的是检查我们是否可以访问 x 秒(为简单起见,每1秒)。我不想重复说明-我只需要知道数据库是否可用。
请记住-我不仅需要知道数据库是否正常。我还需要知道我们是否有权使用它,以及——总的来说——我们是否有权打电话 INSERT 在特定的table上。
我如何用java以最干净的方式(一般来说,用最少的代码)做到这一点?目前我用的是spring的 JpaRepository .

7eumitmz

7eumitmz1#

如果您事先知道这是表级授权,您可以查询信息\u schema.table \u privileges表:

select * from table_privileges where privilege_type = 'INSERT';

如果是架构级授权使用:

select * from schema_privileges where privilege_type = 'INSERT';

无论如何,正确的做法是在基地解决问题。一旦您对表拥有insert特权,就不必担心会失去这些特权,除非是故意撤销的。为什么补助金会消失?这很奇怪,因为补助金是持久的。

相关问题