with Query1 do
begin
Close;
SQL.Clear;
for i := 1 to 2 do
begin
SQL.Add('INSERT INTO employee ' +
'(emp_id,emp_name,dt_flag,class_flag, ' +
' group_flag,adjust_yn,all_flag ) ' +
'VALUES ' +
'(emp_id,emp_name,dt_flag,class_flag, ' +
' group_flag,adjust_yn,all_flag ) ' );
if Copy(edtEmpID.Text,1,1) <> '7' then
begin
if i = 1 then
begin
ParamByName('emp_id' ).AsString := edtEmpID.Text;
ParamByName('emp_name' ).AsString := 'AAA';
ParamByName('dt_flag' ).AsString := 'Y';
ParamByName('class_flag' ).AsString := 'Y';
end
else if i = 2 then
begin
ParamByName('emp_id' ).AsString := edtEmpID.Text;
ParamByName('emp_name' ).AsString := 'BBB';
ParamByName('dt_flag' ).AsString := 'Y';
ParamByName('class_flag' ).AsString := 'N';
end;
ParamByName('group_flag').AsString := 'N';
ParamByName('adjust_yn' ).AsString := 'N';
ParamByName('all_flag' ).AsString := 'N';
end;
ExecSql;
end;
end;
위처럼 insert 문을 만들었는데요..
실행을 시키면 for 문을 두번째 돌때
'SQL명령어가 올바르게 종료되지 않았습니다'라는 에러 메세지가 뜹니다.
SQL문을 값을 넣고 실행시키면 제대로insert 되구요..
for 문을 한번만 돌리면 에러가 안납니다..
for 문을 돌리는 방식이 잘못되서 그런가 본데..
아무리 봐도 뭐가 잘못된건지 모르겠어요...
보시구..
잘못된 점좀 알려주세요~~~ㅠ.ㅠ
그러시면 SQL.Clear를 For문안에 쓰시면 될것 같네여..
그럼 즐프하세염..