我的sql 语句是向一个表中插入3条记录,在Oracle 中直接就可以了,但是在程序中就不能执行了,
insert into Evaluation(NBUSINESSNUM,VBUSINESSNAME,NEVALUATIONINFOID,NCONNUM,VCONTENT,VREMARKS,
NAPPRAISALEMPID,VAPPRAISALEMPNAME,NEVALUATIONEMPID,VEVALUATIONEMPNAME,NSCORE)
values(0,'员工自评',4,1,'教育一','教育一',410000010,'李华', 410000010,'李华',10);
insert into Evaluation(NBUSINESSNUM,VBUSINESSNAME,NEVALUATIONINFOID,NCONNUM,VCONTENT,VREMARKS,
NAPPRAISALEMPID,VAPPRAISALEMPNAME,NEVALUATIONEMPID,VEVALUATIONEMPNAME,NSCORE) values
(0,'员工自评',4,2,'教育2','教育2',410000010,'李华', 410000010,'李华',8);
insert into Evaluation(NBUSINESSNUM,VBUSINESSNAME,NEVALUATIONINFOID,NCONNUM,VCONTENT,VREMARKS,
NAPPRAISALEMPID,VAPPRAISALEMPNAME,NEVALUATIONEMPID,VEVALUATIONEMPNAME,NSCORE)
values(0,'员工自评',4,3,'要有3','要有3',410000010,'李华', 410000010,'李华',5)public int AddInfo(string strWhere)
{
string strConn = PostBank.DBUtility.PubConstant.ConnectionString;
OracleConnection cn = new OracleConnection(strConn);
cn.Open();
OracleTransaction trans = cn.BeginTransaction();
OracleCommand cmd = new OracleCommand(strWhere,cn);
cmd.Transaction = trans;
try
{
cmd.ExecuteNonQuery();
trans.Commit();
return 1;
}
catch
{
trans.Rollback();
return 0;
}
finally
{
cn.Close();
}
}
那位高手赐教啊?
多谢!
insert into Evaluation(NBUSINESSNUM,VBUSINESSNAME,NEVALUATIONINFOID,NCONNUM,VCONTENT,VREMARKS,
NAPPRAISALEMPID,VAPPRAISALEMPNAME,NEVALUATIONEMPID,VEVALUATIONEMPNAME,NSCORE)
values(0,'员工自评',4,1,'教育一','教育一',410000010,'李华', 410000010,'李华',10);
insert into Evaluation(NBUSINESSNUM,VBUSINESSNAME,NEVALUATIONINFOID,NCONNUM,VCONTENT,VREMARKS,
NAPPRAISALEMPID,VAPPRAISALEMPNAME,NEVALUATIONEMPID,VEVALUATIONEMPNAME,NSCORE) values
(0,'员工自评',4,2,'教育2','教育2',410000010,'李华', 410000010,'李华',8);
insert into Evaluation(NBUSINESSNUM,VBUSINESSNAME,NEVALUATIONINFOID,NCONNUM,VCONTENT,VREMARKS,
NAPPRAISALEMPID,VAPPRAISALEMPNAME,NEVALUATIONEMPID,VEVALUATIONEMPNAME,NSCORE)
values(0,'员工自评',4,3,'要有3','要有3',410000010,'李华', 410000010,'李华',5)public int AddInfo(string strWhere)
{
string strConn = PostBank.DBUtility.PubConstant.ConnectionString;
OracleConnection cn = new OracleConnection(strConn);
cn.Open();
OracleTransaction trans = cn.BeginTransaction();
OracleCommand cmd = new OracleCommand(strWhere,cn);
cmd.Transaction = trans;
try
{
cmd.ExecuteNonQuery();
trans.Commit();
return 1;
}
catch
{
trans.Rollback();
return 0;
}
finally
{
cn.Close();
}
}
那位高手赐教啊?
多谢!
{
cmd.ExecuteNonQuery(); // "ORA-00911: 无效字符
trans.Commit();
return 1;
}
这样的错误,好奇怪啊,????
我的字符串在oracle 中可以执行的。但是在程序中就出错了。奇怪啊。!!!!
对看这里http://www.cnblogs.com/zhangronghua/archive/2007/08/29/874484.html
ORA-00911错误及解决方法 今天在开发中遇到了一个问题,被困扰了好找时间。 事情是这样的,
因为我们现在做的系统数据库是用oracle,而我又喜欢凡是和数据库
有关的语句先在pl/sql developer里面测试好了,再往程序里面写。而今天做的代码里
面涉及到查询库里面现在有没有用户输入的表所对应的同义词。所以我便写了这样的一条语句:
string.format(select * from user_synonyms where upper(synonym_name)='{0}' and upper(table_name)='{0}';",
this.txtSourceTableName.Text.ToUpper());谁知在调试的时候走到这个地方就报“ORA-00911: 无效字符”的错误。
可是我明明在pl/sql developer里面测试好了的。困惑了好一会,才发现是最后面的那个“;”号惹的祸。
把它删除掉就行了。
try
{ cmd.CommandText = "";
cmd.ExecuteNonQuery(); cmd.CommandText = "";
cmd.ExecuteNonQuery(); cmd.CommandText = "";
cmd.ExecuteNonQuery();
trans.Commit();
return 1;
}
catch
{
trans.Rollback();
return 0;
} 分开赋值,然后运行。
请大侠指导啊,
例如一个简单的表
id number
name varchar2如何向这个表中添加三条数据啊
insert into table (id,name)values(1,'a');insert into table (id,name)values(2,'a');
insert into table (id,name)values(3,'a')
在oracle 中试可以执行的,但是在程序中就出错了,改如何写
insert into table (id,name)values(3,'a')为啥在oracle
中就不可以了,肯定是哪里没有注意到,但是是哪里啊?
高手指教???
这个问题真的这么难吗?
不像啊,就是简单的问题啊。
例如下面的语句就可以了
begin
insert into table (id,name)values(1,'a');
insert into table (id,name)values(2,'a');
insert into table (id,name)values(3,'a');
end;
就可以执行了,我找了好久,也试了好久,才搞定的。你们说的方法都试过了,都是错的。
所以就不给你们分了。