Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
OCI Lib-can';不执行更新_C_Oracle Call Interface - Fatal编程技术网

OCI Lib-can';不执行更新

OCI Lib-can';不执行更新,c,oracle-call-interface,C,Oracle Call Interface,我正在尝试执行两个查询(选择和更新)。 选择有效,但更新不会进行任何更改。我做错了什么 下面是一些代码: OCI_Statement* st; OCI_Resultset* rs; query[0] ='\0'; //cn is connection st = OCI_StatementCreate(cn); sprintf (query, "SELECT .."); printf (query); OCI_ExecuteStmt(st, query); rs

我正在尝试执行两个查询(选择和更新)。 选择有效,但更新不会进行任何更改。我做错了什么

下面是一些代码:

  OCI_Statement* st;
  OCI_Resultset* rs;
  query[0] ='\0';
  //cn is connection
  st = OCI_StatementCreate(cn);
  sprintf (query, "SELECT ..");
  printf (query);
  OCI_ExecuteStmt(st, query);
  rs = OCI_GetResultset(st);
  //this works
  while (OCI_FetchNext(rs)){


  }
  query[0] ='\0';
  //query is correct; it does updates in the console
  sprintf(query, "update vqc set vqc_u = 'J' where vqc_id >= 1 and vqc_id <= 12" );
  //fails
  //neither 
  OCI_ExecuteStmt(st, query);
  //nor
  OCI_Prepare(st, query);
  OCI_Execute(st);

  printf (query);
OCI_声明*st;
OCI_结果集*rs;
查询[0]='\0';
//cn是连接
st=OCI_语句创建(cn);
sprintf(查询,“选择…”);
printf(查询);
OCI_ExecuteStmt(st,查询);
rs=OCI_GetResultset(st);
//这很有效
而(保监处){
}
查询[0]='\0';
//查询是否正确;它在控制台中进行更新

sprintf(查询,“更新vqc集vqc_='J',其中vqc_id>=1和vqc_id是否使用相同的语句对象?如果是,则无法工作。 是否使用OCI_Commit()?如果不使用,将不会提交任何内容!

谢谢!OCI_Commit()完成了任务。我可以使用相同的语句。