oledb连接oracle的疑问

johnnyflute 2011-06-30 09:00:05
 protected void Page_Load(object sender, EventArgs e)
{
DataTable dsRecords = new DataTable();

OleDbConnection oledbcon = new OleDbConnection(System.Configuration.ConfigurationManager.ConnectionStrings["OledbCon"].ToString());
oledbcon.Open();

OleDbCommand cmd = new OleDbCommand("LOGINVALIDATE", oledbcon);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@AccountID", OleDbType.VarChar);
cmd.Parameters["@AccountID"].Value = "091110421";

cmd.Parameters.Add("@PassWord", OleDbType.VarChar);
cmd.Parameters["@PassWord"].Value = "000000";

cmd.Parameters.Add("@res", OleDbType.VarChar, 50);
cmd.Parameters["@res"].Direction = ParameterDirection.Output;

OleDbDataAdapter adp = new OleDbDataAdapter(cmd);
adp.Fill(dsRecords);
GridView1.DataSource = dsRecords;
GridView1.DataBind();

//Label1.Text = dsRecords.Rows[0].ItemArray[0].ToString();
//OleDbDataAdapter adp = new OleDbDataAdapter(cmd);
//cmd.ExecuteNonQuery();
//Label1.Text = cmd.Parameters["@res"].Value.ToString();
}


已上是我写的访问访问代码,输出参数已经被验证过没问题(注释部分就是),但是为什么往datatable fill的时候,结果总是为空,就是dsRecords里什么也没有。
...全文
62 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhongzheng724 2011-06-30
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 johnnyflute 的回复:]
C# code


protected void Page_Load(object sender, EventArgs e)
{
DataTable dsRecords = new DataTable();

OleDbConnection oledbcon = new OleDbConnection(System.Config……
[/Quote]

只能说你真有才。
johnnyflute 2011-06-30
  • 打赏
  • 举报
回复

protected void Page_Load(object sender, EventArgs e)
{
DataTable dsRecords = new DataTable();

OleDbConnection oledbcon = new OleDbConnection(System.Configuration.ConfigurationManager.ConnectionStrings["OledbCon"].ToString());
oledbcon.Open();
OleDbCommand cmd = new OleDbCommand("LOGINVALIDATE", oledbcon);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@AccountID", OleDbType.VarChar);
cmd.Parameters["@AccountID"].Value = "091110421";

cmd.Parameters.Add("@PassWord", OleDbType.VarChar);
cmd.Parameters["@PassWord"].Value = "000000";

cmd.Parameters.Add("@res", OleDbType.VarChar, 50);
cmd.Parameters["@res"].Direction = ParameterDirection.Output;

cmd.Parameters.Add("@power", OleDbType.VarChar, 50);
cmd.Parameters["@power"].Direction = ParameterDirection.Output;

OleDbDataAdapter adp = new OleDbDataAdapter(cmd);
adp.Fill(dsRecords);
GridView1.DataSource = dsRecords;
GridView1.DataBind();
//cmd.ExecuteNonQuery();
//Label1.Text = cmd.Parameters["@res"].Value.ToString();
}



create or replace procedure loginValidate(studentNumber in varchar2, password in varchar2, res out varchar2, power out number) is
begin
select ACCOUNT_ID, ROLE into res, power FROM SYSTEM.ACCOUNT where ACCOUNT_ID= studentNumber AND PASSWRD = password;

EXCEPTION
WHEN No_data_found THEN
res :='0000';
power :=100;
end loginValidate;
jason成都 2011-06-30
  • 打赏
  • 举报
回复
你的存储过程是什么哦?

7,765

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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