我们有一个使用SQLyog导出所有数据库(包括mysql)的作业,这个作业每晚运行。最近,我们添加了一个使用函数的视图:
SELECT
ps.SubmissionDate SubmissionDate,
ps.TransactionNo,
ps.FormNumber
FROM
premier_submissions ps
UNION
SELECT
psh.LastSubmissionDate SubmissionDate,
psh.TransactionNo,
psh.FormNumber
FROM
premier_submissionhistory psh
UNION
SELECT
SPLIT_STR (ps.SubmissionDates, '*', 1) SubmissionDate,
ps.TransactionNo,
ps.FormNumber
FROM
premier_submissions ps
UNION
SELECT
SPLIT_STR (psh.ResubmissionDates, '*', 1) SubmissionDate,
psh.TransactionNo,
psh.FormNumber
FROM
premier_submissionhistory psh
现在,当此导出作业运行时,我们收到此错误:
“查看'pride.charges_by_submission_date'引用无效表格 或列或功能或定义者/调查者缺乏权利 使用它们“
函数SPLIT_STR不是新的,导出就好了。更奇怪的是,我可以创建一个只导出这个视图和函数的工作,并且工作正常。如果我导出所有内容并且一致,则作业只会失败 - 每次都会出错。是的,我已经检查了正在进行备份的帐户的权限。我在SQLyog论坛上发帖,但没有得到回复。
答案 0 :(得分:0)
问题在于用户具有SELECT权限,该权限允许将表导出函数,但没有EXECUTE权限,显然需要导出使用函数的视图。