<!--CodeS-->
sql.Clear;
sql.Add(' select * from files where upuser = :R1 and description like :R2 ');
sql.Add(' or filename like :R3');
ParamByname('R1').AsString := Temp_User;
ParamByname('R2').AsString := '%' + now_Temp_Folder + '%';
ParamByname('R3').AsString := '%' + now_Temp_Folder;
Open;
First;
for loop_Count := 0 to RecordCount - 1 do //루프에서 값을 업데이트 시킴
begin
Edit;
t_target_Parent := Temp_FolderName + Copy(fieldByname('Description').AsString,
Length(t_FolderPath) + 1,
Length(fieldByname('Description').AsString) -
Length(t_FolderPath));
FieldByName('Description').AsString := t_Target_Parent;
Post;
Next;
end;
<!--CodeE-->
또 질문을 올리네요....^^
질문 내용은 (아~~손이 시려워서..타이핑이 잘 안됩니다....ㅠㅠ) db에서 레코드를 select 했습니다.
select문은 정상적으로 실행이 되었는데...For문에서 Post가 일어나지 않는군요...
레코드를 분류해서 필드(Description)의 값이
'aaa/bbb/ccc/ddd/'
'aaa/bbb/ggg/hhh/'
'aaa/bbb/hhh/rrr/'
값이 있을 때 원하는 필드의 값을
'aaa/bbb/'의
값 대신에 'eee/fff/'값을 넣을려고 하는데...잘 안되네요...
아직은 SQL 초보라서...
질문내용을 요약해보면
총 레코드에서 원하는 레코드만 추출 한 후
추출한 레코드의 필드중에 원하는 부분만 변경한다. 뭐..이런 식입니다.
고수님들 좋은 방법이 없을까요????
참...MySQL, Delphi 7.0 사용하고 있습니다...
update 테이블 set 필드명 = replace(필드명, 원본문자열, 바꿀문자열) [, 필드명,...] where 조건
위 update문을 이용해서 문제를 해결했습니다.^^