【发布时间】:2014-01-22 12:15:57
【问题描述】:
我能够在 MySQL Workbench 中运行存储过程。当我在.NET中调用存储过程时,我得到了这个错误。
错误信息: 错误 ReturnDatatable():SELECT 命令拒绝用户 'Admin'@'203.116.84.134' 用于表 'proc'
但是,用户是正确的,因为它可以从 MySQL 工作台正常运行。是否需要设置一些 .NET 配置设置?
.NET 代码如下所示。
<DataObjectMethod(DataObjectMethodType.Select)> _
Public Shared Sub Calculate(ByVal USER_ID As Integer)
Dim objDBProvider As DbProviderFactory = DbProviderFactories.GetFactory(ConfigSettings.ProviderName)
Dim objDBConnection As DbConnection = objDBProvider.CreateConnection()
Dim objDBCommand As DbCommand = Nothing
Dim objDBDataAdaptor As DbDataAdapter = Nothing
Dim objDBParameter As DbParameter = Nothing
Dim int As Integer = 0
Try
objDBConnection.ConnectionString = ConfigSettings.ConnectionString
objDBConnection.Open()
Catch ex As Exception
Throw New Exception("Error ReturnDatatable(): " & ex.Message)
End Try
Try
objDBCommand = objDBProvider.CreateCommand()
objDBCommand.Connection = objDBConnection
objDBCommand.CommandText = "fullCalculation"
objDBCommand.CommandType = CommandType.StoredProcedure
objDBParameter = CreateParameter(objDBCommand, "USER_ID", DbType.Int32, USER_ID)
objDBCommand.Parameters.Add(objDBParameter)
int = Convert.ToUInt32(objDBCommand.ExecuteScalar())
objDBCommand.Connection = objDBConnection
objDBCommand.ExecuteNonQuery()
Catch ex As Exception
Throw New Exception("Error ReturnDatatable(): " & ex.Message)
End Try
End Sub
【问题讨论】:
-
但是,用户是正确的,看错误信息。现在回到你写的。现在回到错误消息。现在回到你写的。坏消息:用户不正确或权限错误。