delphi大作业,设备管理系统被其中一个东西难住了这个是一个aodquery控件里的sql语句
select *
from employee emp left outer join depart dept
on (emp.dept_no=dept.dept_no)
where emp.dept_no = :deptno
or 1=:isAllDept
然后我要实现删除它生成的表中的游标所在的记录。。
直接用delete会报错,
然后想用另外一个adoquery来单独对employee表进行删除操作,可是它提示
我的代码如下
procedure TfrmEmpManager.BitBtn3Click(Sender: TObject);
begin
//添加控件和代码,完成删除功能,如果该员工有采购、报废、借用国设备,
//则提示不允许删除
if self.qryEmployee.IsEmpty then begin
showmessage('无员工可删');
exit;
end;
if messagebox(handle,
pchar('确定删除'+
self.qryEmployee.fieldByName('emp_name').asstring+'吗?'),
'确认',mb_okcancel)<>idok then exit;
self.ADOQuery1.Close;
self.ADOQuery1.Parameters.ParamByName('emp_no').Value :=
self.qryEmployee.fieldbyname('EMP_NO').AsString;
self.ADOQuery1.Open;
if self.ADOQuery1.RecordCount <> 0 then
begin
showmessage('该员工有借用设备,不允许删除');
exit;
end;
self.ADOQueryDelete.Close;
self.ADOQueryDelete.Parameters.ParamByName('DelEmpNo').Value:=
self.qryEmployee.FieldByName('EMP_NO').AsString;
self.qryEmployee.Close;
self.ADOQueryDelete.Open;
self.ADOQueryDelete.Close;
self.qryEmployee.Open;
end;
select *
from employee emp left outer join depart dept
on (emp.dept_no=dept.dept_no)
where emp.dept_no = :deptno
or 1=:isAllDept
然后我要实现删除它生成的表中的游标所在的记录。。
直接用delete会报错,
然后想用另外一个adoquery来单独对employee表进行删除操作,可是它提示
我的代码如下
procedure TfrmEmpManager.BitBtn3Click(Sender: TObject);
begin
//添加控件和代码,完成删除功能,如果该员工有采购、报废、借用国设备,
//则提示不允许删除
if self.qryEmployee.IsEmpty then begin
showmessage('无员工可删');
exit;
end;
if messagebox(handle,
pchar('确定删除'+
self.qryEmployee.fieldByName('emp_name').asstring+'吗?'),
'确认',mb_okcancel)<>idok then exit;
self.ADOQuery1.Close;
self.ADOQuery1.Parameters.ParamByName('emp_no').Value :=
self.qryEmployee.fieldbyname('EMP_NO').AsString;
self.ADOQuery1.Open;
if self.ADOQuery1.RecordCount <> 0 then
begin
showmessage('该员工有借用设备,不允许删除');
exit;
end;
self.ADOQueryDelete.Close;
self.ADOQueryDelete.Parameters.ParamByName('DelEmpNo').Value:=
self.qryEmployee.FieldByName('EMP_NO').AsString;
self.qryEmployee.Close;
self.ADOQueryDelete.Open;
self.ADOQueryDelete.Close;
self.qryEmployee.Open;
end;
解决方案 »
- 讨论: 如何在 delphi7 + devExpress bar 6 制作的: ribbon 风格程序,体积小一些?
- 远程播放语音的问题
- 流媒体缓冲问题
- 求购《Delphi 5.X ADO/MTS/COM+高级程序设计篇》这本书!
- 为什么注册ActiveX控件失败??
- 有谁有InstallShield的最新版本?
- 关于文件保存的问题。
- 多表并在一起查询时,原来各个表的主健的纪录,此时可以重复吗??(牛虻)
- 带form的dll里面的datasource怎么连接其他程序里的database?
- delphi 7 没有RemoteDataModule向导 是为什么?
- 请问delphi7适合在vista上开发反逆向工程调试领域吗??
- ACCESS数据库SQL查询奇怪的问题
ADOQueryDelete.sql.text := 'delete from employee where emp_no=:emp_no';
ADOQueryDelete.Parameters.ParamByName('emp_no').Value:=选中的值
ADOQueryDelete.execsql;
然后查询的query刷新OPEN是打开,execsql执行无返回值的操作
delete from Employee where EMP_NO =:DelEmpNo