我在Fedora上使用MySQL 5.5.31,但我在删除非现有程序时遇到问题。 使用root用户:
为数据库测试的用户测试授予所有权限
GRANT ALL PRIVILEGES ON test.* TO 'test'@'%' WITH GRANT OPTION;
使用用户测试
CREATE PROCEDURE test.foo() SELECT NOW();
DROP PROCEDURE IF EXISTS test.foo;
Query OK, 0 rows affected (0.00 sec)
DROP PROCEDURE IF EXISTS test.foo;
ERROR 1370 (42000): alter routine command denied to user 'test'@'localhost' for routine 'test.foo'
“IF EXISTS”为什么不起作用?
如果我对root用户做同样的事情一切正常(有警告,但没关系):
使用用户测试
CREATE PROCEDURE test.foo() SELECT NOW();
DROP PROCEDURE IF EXISTS test.foo;
Query OK, 0 rows affected (0.00 sec)
DROP PROCEDURE IF EXISTS test.foo;
Query OK, 0 rows affected, 1 warning (0.00 sec)
答案 0 :(得分:0)
首先,从GRANT ALL PRIVILEGES ON test.* TO 'test'@'%' WITH GRANT OPTION;
localhost
不会授予用户权限
您需要单独授予localhost
从错误看,您在第一个DROP
之后断开连接并再次从localhost
连接。
好吧,如果你一个接一个地执行这4个语句,你应该得到与root
GRANT ALL PRIVILEGES ON test.* TO 'test'@'%' WITH GRANT OPTION;
CREATE PROCEDURE test.foo() SELECT NOW();
DROP PROCEDURE IF EXISTS test.foo;
DROP PROCEDURE IF EXISTS test.foo;
如果我的答案清楚,请告诉我
答案 1 :(得分:0)
尝试在DROP PROCEDURE IF EXISTS
命令之前使用$(document).ready(function () {
$('#jqChart').jqChart({
title: { text: 'Efficiency' },
animation: { duration: 1 },
shadows: {
enabled: true
},
axes: [
{
type: 'category',
location: 'bottom',
title: { text: 'Days in month' },
categories: [<?php echo $dateData; ?>],
zoomEnabled: true,
},
{
type: 'linear',
name: 'y1',
location: 'left',
title: { text: 'Working hours' },
labels: {
stringFormat: '%d'
},
minimum:0,
maximum:15,
interval:1
},
{
type: 'category',
name: 'y2',
location: 'right',
strokeStyle: '#FCB441',
majorGridLines: { strokeStyle: '#FCB441' },
majorTickMarks: { strokeStyle: '#FCB441' },
title: { text: 'LUF/Efficiency' },
labels: {
stringFormat: '%.1f'
},
minimum:0,
maximum:5
}
],
series: [
{
type: 'stackedColumn',
axisY: 'y1',
title: 'Effective time',
fillStyle: 'green',
data: [<?php echo $dat1; ?>],
labels: {
font: '12px sans-serif'
}
},
{
type: 'stackedColumn',
axisY: 'y1',
title: 'Idle time',
fillStyle: 'red',
data: [<?php echo $dat3; ?>],
labels: {
font: '12px sans-serif'
}
}
]
});
});
。