日期:2014-05-20  浏览次数:20967 次

增加
public int add()
  {
  增加 a = new 增加();
  OracleConnection conn = new OracleConnection(@"Data Source=insure155;user=WZH;password=zhezhua");
  conn.Open();
  string SQL="insert into PEOPLE(name,rfnumber,high,weight,xueli,face,marry,co,time,sex,dept,pay)"
  +"values(:name,:rfnumber,:high,:weight,:xueli,:face,:marry,:co,:time,:sex,:dept,:pay)";
  OracleCommand cmd = new OracleCommand(SQL, conn);
  OracleParameter par1 = new OracleParameter(":name", a.text1);
  cmd.Parameters.Add(par1);
  OracleParameter par2 = new OracleParameter(":rfnumber", a.text2);
  cmd.Parameters.Add(par2);
  OracleParameter par3 = new OracleParameter(":high", a.text3);
  cmd.Parameters.Add(par3);
  OracleParameter par4 = new OracleParameter(":weight", a.text4);
  cmd.Parameters.Add(par4);
  OracleParameter par5 = new OracleParameter(":xueli", a.text5);
  cmd.Parameters.Add(par5);
  OracleParameter par6 = new OracleParameter(":face", a.text6);
  cmd.Parameters.Add(par6);
  OracleParameter par7 = new OracleParameter(":marry", a.text7);
  cmd.Parameters.Add(par7);
  OracleParameter par8 = new OracleParameter(":co", a.text8);
  cmd.Parameters.Add(par8);
  OracleParameter par9 = new OracleParameter(":time", a.text9);
  cmd.Parameters.Add(par9);
  OracleParameter par10 = new OracleParameter(":sex", a.text10);
  cmd.Parameters.Add(par10);
  OracleParameter par11 = new OracleParameter(":dept", a.text11);
  cmd.Parameters.Add(par11);
  OracleParameter par12 = new OracleParameter(":pay", a.text12);
  cmd.Parameters.Add(par12);
   
int s = cmd.ExecuteNonQuery();
conn.Close();
cmd.Dispose();
return s;
  }


我数据库总共12列,都添加了。红色的那段没有执行,不知道为什么?求大哥指导啊!望能指出错误,最好能注释(方便我看懂!)

------解决方案--------------------
增加 a = new 增加(); //构造一个对象 a

OracleConnection conn = new OracleConnection(""); //构造一个Oracle连接对象

conn.Open(); // 打开连接

string SQL="insert into ... "; //准备的SQL语句

OracleCommand cmd = new OracleCommand(SQL, conn); //构造一个Command对象

  //为构造的Command对象添加参数
OracleParameter par1 = new OracleParameter(":name", a.text1);
cmd.Parameters.Add(par1);

....

int s = cmd.ExecuteNonQuery(); //执行Command进行插入,返回受影响的行数目

// 关闭连接,释放Command对象,返回受影响的行数目
conn.Close(); 
cmd.Dispose();
return s;

-------------------------------------------------
1. 请检查你构造的对象a的text1到text12有无值
2. 请仔细检查每个参数的类型与数据库里的字段类型是否一致