date="'"+dtime+","+save[i,0].ToString()+","+save[i,1].ToString()+","+save[i,2].ToString()+","+save[i,3].ToString()+","+save[i,4].ToString()+","+save[i,5].ToString()+","+save[i,6].ToString()+"'";
ocmd.CommandText = "insert into hao(日期,NO1,NO2,NO3,NO4,NO5,NO6,NO7) values("+date+")";
ocmd.ExecuteNonQuery();
在上面的代码中,values的值如果用一个字符串变量代替,它就不行。但我又需要这样,请高手给个办法!
没试过……帮顶!
这样写date就应该可以了:
date="'"+dtime+"','"+save[i,0].ToString()+"','"+save[i,1].ToString()+"','"+save[i,2].ToString()+"','"+save[i,3].ToString()+"','"+save[i,4].ToString()+"','"+save[i,5].ToString()+"','"+save[i,6].ToString()+"'";
主要还是拼接字符串的问题
因为有的需要单引号,有的不需要。这里很容易出错。
我个人还是习惯用如下方式
string model="'{0}',{1},{2},{3},{4},{5},{6},{7}";
在使用的时候
string.Format(model,save[i,0],save[i,1],save[i,2],save[i,3],save[i,4],save[i,5],save[i,6],save[i,7]);
这样更清晰。
date="'"+dtime+","+save[i,0].ToString()+","+save[
_RecordsetPtr CMyAdo::SelectRecord(string &where, string &tablename,string &field, int way )
{
int ret = 0;
_RecordsetPtr pset;
CString sql;
& ......