with ADOQuery1 do
begin
Close;
SQL.Clear;
SQL.Add('DELETE FROM Product ');
SQL.Add('WHERE SchoolName = :_SchoolName ');
SQL.Add('and ProductName = :_ProductName ');
SQL.Add('and Sex = :_Sex ');
Parameters.ParamByName('_SchoolName').Value := DBGrid1.Fields[0].Value;
Parameters.ParamByName('_ProductName').Value := DBGrid1.Fields[1].Value;
Parameters.ParamByName('_Sex').Value := DBGrid1.Fields[2].Value;
Execsql;
Close;
end;
이문장이 잘 못 되었는는지 실행만 하면 에러가 납니다..
에러...
Access violation at address 004a91 in module 'Project1.exe', Read of address 00000000'
이케 납니다....
부탁 드립니다..
Access Violation에러가 나는것을 보면... 아마도 DBGrid1.Fields[0].Value; 이부분들에서 발생한듯하네요...
DBGrid1에서 Fields속석을 억세스 할 수 있는가 디버깅해보세요...
만일 DBGrid1하고 ADOQuery1하고 연결되어 있다면 저 문장은 안될겁니다. Close한 순간 데이터가 다 날라가니까요...
^^ 항상 즐코하세요...