OledbParameter问题---“無值提供給一或多個必要參數。”

hz890 2009-01-19 05:03:26

public DataTable GetDataTable()
{
string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Mike\DAOWebTest\App_Data\Northwind.mdb;User Id=;Password=;";
DataTable dt = new DataTable();
OleDbConnection conn = new OleDbConnection(connectionString);
OleDbCommand oledbCmd = new OleDbCommand("select * from Products where [類別]=@kind",conn);
oledbCmd.CommandType = CommandType.Text;
oledbCmd.Parameters.AddWithValue("@kind", "飲料");
OleDbDataAdapter oledbDa = new OleDbDataAdapter(oledbCmd);
oledbDa.Fill(dt);
return dt;
}


我头一回在ASP.NET中使用OleDb访问Access,不知如何解决此问题,感谢帮助!
...全文
571 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
eyuannet 2009-01-20
  • 打赏
  • 举报
回复
string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\\Mike\\DAOWebTest\\App_Data\\Northwind.mdb;User Id=;Password=;";
OleDbConnection conn = new OleDbConnection(connectionString);
OleDbCommand oledbCmd = new OleDbCommand("select * from Products where [類別]=?",conn);
oledbCmd.CommandType = CommandType.Text;
oledbCmd.Parameters.AddWithValue("kind", "飲料");
OleDbDataAdapter oledbDa = new OleDbDataAdapter(oledbCmd);
DataSet ds = new DataSet();
oledbDa.Fill(ds,"Products");
DataTable dt = ds.Tables[0];
return dt;

发表于:2009-01-20 13:58:088楼 得分:0
C# code string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\\Mike\\DAOWebTest\\App_Data\\Northwind.mdb;User Id=;Password=;";
OleDbConnection conn = new OleDbConnection(connectionString);
OleDbCommand oledbCmd = new OleDbCommand("select * from Products where [類別]=?",conn);
oledbCmd.CommandType = CommandType.Text;
oledbCmd.Parameters.AddWithValue("kind", "飲料");
OleDbDataAdapter oledbDa = new OleDbDataAdapter(oledbCmd);
DataSet ds = new DataSet();
oledbDa.Fill(ds,"Products");
DataTable dt = ds.Tables[0];
return dt;


用?号
eyuannet 2009-01-20
  • 打赏
  • 举报
回复
        string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\\Mike\\DAOWebTest\\App_Data\\Northwind.mdb;User Id=;Password=;";
OleDbConnection conn = new OleDbConnection(connectionString);
OleDbCommand oledbCmd = new OleDbCommand("select * from Products where [類別]=?",conn);
oledbCmd.CommandType = CommandType.Text;
oledbCmd.Parameters.AddWithValue("kind", "飲料");
OleDbDataAdapter oledbDa = new OleDbDataAdapter(oledbCmd);
DataSet ds = new DataSet();
oledbDa.Fill(ds,"Products");
DataTable dt = ds.Tables[0];
return dt;

用?号
ppp7p 2009-01-19
  • 打赏
  • 举报
回复
你没有给参数赋值.
hz890 2009-01-19
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 wuyq11 的回复:]
OleDbParameter par1 = new OleDbParameter();
par1.ParameterName = "@kind";
par1.Value = "";
cmd.Parameters.Add(par1);


OleDbDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{

}
[/Quote]

还是原来的错误“無值提供給一或多個必要參數。”
wuyq11 2009-01-19
  • 打赏
  • 举报
回复
OleDbParameter par1 = new OleDbParameter();
par1.ParameterName = "@kind";
par1.Value = "";
cmd.Parameters.Add(par1);


OleDbDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{

}
hz890 2009-01-19
  • 打赏
  • 举报
回复

string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\\Mike\\DAOWebTest\\App_Data\\Northwind.mdb;User Id=;Password=;";
OleDbConnection conn = new OleDbConnection(connectionString);
OleDbCommand oledbCmd = new OleDbCommand("select * from Products where [類別]=@kind",conn);
oledbCmd.CommandType = CommandType.Text;
oledbCmd.Parameters.AddWithValue("@kind", "飲料");
OleDbDataAdapter oledbDa = new OleDbDataAdapter(oledbCmd);
DataSet ds = new DataSet();
oledbDa.Fill(ds,"Products");
DataTable dt = ds.Tables[0];
return dt;


这样做还是发生原先的错误!!!!
hz890 2009-01-19
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 jiang_jiajia10 的回复:]
C# code
public DataTable GetDataTable()
{
string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Mike\DAOWebTest\App_Data\Northwind.mdb;User Id=;Password=;";
OleDbConnection conn = new OleDbConnection(connectionString);
OleDbCommand oledbCmd = new OleDbCommand("select * from Products where [類別]=@kind",conn);
oledbCmd.CommandType = C…
[/Quote]

错误依旧!!!
jiang_jiajia10 2009-01-19
  • 打赏
  • 举报
回复

public DataTable GetDataTable()
{
string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Mike\DAOWebTest\App_Data\Northwind.mdb;User Id=;Password=;";
OleDbConnection conn = new OleDbConnection(connectionString);
OleDbCommand oledbCmd = new OleDbCommand("select * from Products where [類別]=@kind",conn);
oledbCmd.CommandType = CommandType.Text;
oledbCmd.Parameters.AddWithValue("@kind", "飲料");
OleDbDataAdapter oledbDa = new OleDbDataAdapter(oledbCmd,conn);
DataSet ds = new DataSet();
oledbDa.Fill(ds,"Products");
DataTable dt = ds.Table[0].DefultView;
return dt;
}

hz890 2009-01-19
  • 打赏
  • 举报
回复
---“無值提供給一或多個必要參數。” 的错误发生在oledbDa.Fill(dt);

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧