【发布时间】:2014-12-05 08:13:33
【问题描述】:
我正在处理连接到 SQL 数据库 (MySQL 2008) 的 asp.net C# 项目。这是我的 C# 类:
public static DataTable GetUnitByName(string unit)
{
Database db = DatabaseFactory.CreateDatabase();
string sqlCommand = "GetUnitByName";
DbCommand dbCommandWrapper = db.GetStoredProcCommand(sqlCommand);
db.AddInParameter(dbCommandWrapper, "@Unit", DbType.String, unit);
DataSet ds = db.ExecuteDataSet(dbCommandWrapper);
DataTable dt = ds.Tables[0];
return dt;
}
这是存储过程:
alter PROCEDURE [dbo].[GetUnitByName]
(
@Unit nvarchar
)
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON
DECLARE @Err int
-- Insert statements for procedure here
select * from Unit where Name=@Unit
SET @Err = @@Error
RETURN @Err
END
我这样调用程序:
DataTable unit1 = Unit.GetUnitByName(per100gText[1]enter code here); , per10gText 是一个字符串列表。
但它返回空数据表。与 sql server 的连接,在调试中我看到该过程无法读取参数。
请提供任何帮助。
【问题讨论】:
标签: c# sql stored-procedures