2
我想用MySql和Mono填充存儲過程的結果的數據集。如何使用MySql和Mono從存儲過程填充數據集
存儲過程需要一些值,在表中創建一個新行,然後選擇一些行。
當我嘗試這個我得到一個空的數據集,我的數據庫沒有任何新的記錄。 我已經檢查了基本知識:
- 數據庫正在運行,我可以連接。
- 存儲過程名稱和參數名稱正確。
- 參數類型正確。
- 存儲過程從sql命令行正常工作。
如果我不使用存儲過程並將command.commandtext設置爲某個sql,它將返回一個包含數據的數據集。
這裏是一個代碼片斷,顯示了我正在嘗試做什麼。
ConnectionStringSettings connectionStringSettings = ConfigurationManager.ConnectionStrings [this.provider];
DbProviderFactory factory = DbProviderFactories.GetFactory (connectionStringSettings.ProviderName);
using(DbConnection connection = factory.CreateConnection())
{
connection.ConnectionString = connectionStringSettings.ConnectionString;
connection.Open();
using(DbCommand command = connection.CreateCommand()) {
command.CommandText = "createUser";
command.CommandType = CommandType.StoredProcedure;
dbParameter dbParameter = factory.CreateParameter();
dbParameter.ParameterName = "@name";
dbParameter.Value = "Fred.Smith";
command.Parameters.Add(dbParameter);
DataSet dataset = new DataSet();
DbDataAdapter adaptor = factory.CreateDataAdapter();
adaptor.SelectCommand = command;
adaptor.Fill(dataset);
//This is all ways empty
return dataset;
}
}
您是否使用MS.NET編碼?你可以用MySqlParameter試試嗎? – yojimbo87 2010-07-07 15:39:10