////////////////PLSQL创建存储过程如下
create or replace procedure insertName
(
username in char(20),
sex in char(2),
age in char(3),
address in char(100)
)
is
begin
select count(username) from userinfo;
end insertName;//////////////////NET中取存储过程如下:
conn连接时没有问题的!! string username = this.username.Text.Trim().ToString();
string age = this.age.Text.Trim().ToString();
string sex = this.sex.Text.Trim().ToString();
string address = this.address.Text.Trim().ToString(); OracleConnection conn = getconnoracle(); OracleCommand cmd = new OracleCommand();
cmd.CommandText = "insertName";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("username", username);
cmd.Parameters.Add("sex", sex);
cmd.Parameters.Add("age", age);
cmd.Parameters.Add("address", address);
cmd.Connection = conn; try
{
conn.Open();
cmd.ExecuteNonQuery();
Response.Write("suess!");
}
catch (Exception oo)
{
Response.Write(oo.Message);
}
finally
{
conn.Close();
}运行结果如下:
ORA-06550: 第 1 行, 第 7 列: PLS-00905: 对象 COMMONUSER.INSERTNAME 无效 ORA-06550: 第 1 行, 第 7 列: PL/SQL: Statement ignored 按网上说如果将
cmd.Parameters.Add("username", username);
cmd.Parameters.Add("sex", sex);
cmd.Parameters.Add("age", age);
cmd.Parameters.Add("address", address);
变成
cmd.Parameters.Add(":username", username);
cmd.Parameters.Add(":sex", sex);
cmd.Parameters.Add(":age", age);
cmd.Parameters.Add(":address", address);结果::内部 .Net Framework 数据提供程序错误 30。小弟新手,深夜求教,望各位哥哥不吝指导!!!
create or replace procedure insertName
(
username in char(20),
sex in char(2),
age in char(3),
address in char(100)
)
is
begin
select count(username) from userinfo;
end insertName;//////////////////NET中取存储过程如下:
conn连接时没有问题的!! string username = this.username.Text.Trim().ToString();
string age = this.age.Text.Trim().ToString();
string sex = this.sex.Text.Trim().ToString();
string address = this.address.Text.Trim().ToString(); OracleConnection conn = getconnoracle(); OracleCommand cmd = new OracleCommand();
cmd.CommandText = "insertName";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("username", username);
cmd.Parameters.Add("sex", sex);
cmd.Parameters.Add("age", age);
cmd.Parameters.Add("address", address);
cmd.Connection = conn; try
{
conn.Open();
cmd.ExecuteNonQuery();
Response.Write("suess!");
}
catch (Exception oo)
{
Response.Write(oo.Message);
}
finally
{
conn.Close();
}运行结果如下:
ORA-06550: 第 1 行, 第 7 列: PLS-00905: 对象 COMMONUSER.INSERTNAME 无效 ORA-06550: 第 1 行, 第 7 列: PL/SQL: Statement ignored 按网上说如果将
cmd.Parameters.Add("username", username);
cmd.Parameters.Add("sex", sex);
cmd.Parameters.Add("age", age);
cmd.Parameters.Add("address", address);
变成
cmd.Parameters.Add(":username", username);
cmd.Parameters.Add(":sex", sex);
cmd.Parameters.Add(":age", age);
cmd.Parameters.Add(":address", address);结果::内部 .Net Framework 数据提供程序错误 30。小弟新手,深夜求教,望各位哥哥不吝指导!!!
我用它登录PLSQL来写的存储过程!
oracle10g + net3.5
(
username char,
sex char,
age char,
address char
)
is
begin
insert into userinfo values (username,sex,age,address);end insertName;
end insertName;
上网查了一个晚上了···改成这样就OKl