关于ADO做入出库的问题

gggggame 2003-12-17 08:53:12
ADO做入出库的时候我就不会写了
请大家帮忙啊
void CWz2Dlg::OnSave()
{ CString str,Vid,Vname,Vmodel,Vnum,Vprice;
m_id.GetWindowText(Vid);
m_name.GetWindowText(Vname);
m_model.GetWindowText(Vmodel);
m_price.GetWindowText(Vprice);
m_num.GetWindowText(Vnum);
_RecordsetPtr pRs2;
int i;
pRs2->Open("select count(*) as i from info where Name=Vname and Model=Vmodel ",(IDispatch*)theApp.con,adOpenDynamic,adLockOptimistic,adCmdText);先查找有没有类型和名子和要入库或出库的东西一样的 有的话标记i
if(i==0)
{
str="insert into info (ID,Name,Model,Num,Price) values ("+Vid+",'"+Vname+"','"+Vmodel+"','"+Vnum+"','"+Vprice+"')";
pCmd->CommandText=(_bstr_t)str;
MessageBox(str);
pCmd->Execute(NULL,NULL,1);
MessageBox(str);
pRs->Requery(0);
display();
}
else
{
if(fill=='+')//到这里就不行了 当入库时只在num里加 但不知道怎么做类型转换啊
{
str="update info set ID ='"+Vid+"',Name='"+Vname+"',Model='"+Vmodel+"',Price='"+Vprice+"',Num='"+Vnum+"' where Name=='"+Vname+"' and Model=='"+Vmodel+"';
pCmd->CommandText=(_bstr_t)str;
pCmd->Execute(NULL,NULL,1);
pRs->Requery(0);
display();
}
}
}
...全文
29 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
gggggame 2003-12-20
  • 打赏
  • 举报
回复
怎么没有人回贴啊 自己顶
gggggame 2003-12-19
  • 打赏
  • 举报
回复
主要不是那个SQL语句 可能我的编程思想不正确 现在做个仓库管理系统 (只说出入库那部分)
物品入库和出库不是只把数量num做加或减的操作 再更新到数据库就行了吗 我是这么想的:在入库和出库BUTTON里加个变量 当入库时为‘+’,出库时为‘-’ 然后在保存按钮里 选判断他是入库还是出库 然后再在数据库里找库中有没有这个同样的型号的物品 (name,model和输入的是否相等)
如果没有就添加 如下:str="insert into info (ID,Name,Model,Num,Price) values ("+Vid+",'"+Vname+"','"+Vmodel+"','"+Vnum+"','"+Vprice+"')";(这部分现在运行没错误)
如果有就要把有的那条记录的数量num‘+’或'-'再更新,这里还要把提出来的数量做类型转换吧 就这里不知道怎么写。
DebugXP 2003-12-19
  • 打赏
  • 举报
回复
字段都是字符型的??
重申 where Name='"+Vname+"' and Model='"+Vmodel+"';
不要==



gggggame 2003-12-19
  • 打赏
  • 举报
回复
str="update info set ID ='"+Vid+"',Name='"+Vname+"',Model='"+Vmodel+"',Price='"+Vprice+"',Num='"+Vnum+"' where Name=='"+Vname+"' and Model=='"+Vmodel+"';
应该是这样的 我乱改给乱错了
DebugXP 2003-12-19
  • 打赏
  • 举报
回复
你还== ??
where Name='"+Vname+"' and Model='"+Vmodel+"';
DebugXP 2003-12-19
  • 打赏
  • 举报
回复
如果是CString str,Vid,Vname,Vmodel,Vnum,Vprice; 不用""
str="update info set ID ='+Vid+',Name='+Vname+',Model='+Vmodel+',Price='+Vprice+',Num='+Vnum+' where Name=='+Vname+' and Model=='+Vmodel+';

建议改成_bstr_t str,Vid,Vname,Vmodel,Vnum,Vprice;
str="update info set ID ='"+Vid+"',Name='"+Vname+"',Model='"+Vmodel+"',Price='"+Vprice+"',Num='"+Vnum+"' where Name=='"+Vname+"' and Model=='"+Vmodel+"';
gggggame 2003-12-19
  • 打赏
  • 举报
回复
望有人能帮上我啊
gggggame 2003-12-18
  • 打赏
  • 举报
回复
去了 没郁闷死 下了十几个 做的是挺好 但没找到我要的
arvid_gs 2003-12-18
  • 打赏
  • 举报
回复
这是个做什么用的东西呢
.
if(fill=='+')//
gggggame 2003-12-18
  • 打赏
  • 举报
回复
if(fill=='+')//'+'的时候为入库 开关变量 判断出库还是内库的 有没有可以拉兄弟一把啊
cdwy411 2003-12-17
  • 打赏
  • 举报
回复
http://www.vckbase.com上有很多ADO的例子
先去看看来!
gggggame 2003-12-17
  • 打赏
  • 举报
回复
我知道我写有一定不对 本来不想把代码也扔上来的 但我真的一点头绪也没有啊 上面的也是乱写的
gggggame 2003-12-17
  • 打赏
  • 举报
回复
放过我吧 我英语是一点点也不会啊 不是一点是一点点都不会
AkiraChing 2003-12-17
  • 打赏
  • 举报
回复
if id is a IDENTITY type , it will not allow to be update programatically. one way is to use sql to update an identity field

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧