용기를 내어 질문을 올립니다
시작한지 일주일도 안된 완접 허접입니다..
두개의 데이블이 있습니다.
-------------------------------------------------------------------
예상 테이블 -> 필드가 103개 있습니다.
idx num _00 _01 _02 _03 _04 _05........_99 <-필드명
1 56 12 42 23 23 43 43 .........23 <-데이타
......요런식으로 첨엔 연속성이 없지만 나머지 필드명은 _00번에서 _99번까지 연속됩니다.
--------------------------------------------------------------------
--------------------------------------------------------------------
결과 테이블 -> 필드가 106개 있습니다.
idx num conn_day sum hit _00 _01 _02 _03 _04 _05........_99 <-필드명
1 56 05/03/11 4343 23 12 42 23 23 43 43 .........23 <-데이타
.......예상 테이블과 필드명은 다 똑같지만 첨에 몇개의 필드명만 더 있습니다.
--------------------------------------------------------------------
예상 테이블에서 결과 테이블로 필드명에 딸린 데이타를 한꺼번에 옮겨야 되는대..제가 첨에 하기엔 변수명을 일일이 필드숫자대로 주어 select 해서 한번 불러내어 변수에 넣은다음 다시 insert 하고 있습니다. 넘넘 무식한 방법인대 잘은 되더군여...
근대 문제는 예상테이블의 _00......_99 까지의 변수명에 담겨져 있는 데이타를 다 더해서 결과 데이타에 sum 필드에 넣어야 하는대 안되더군여..
그래서 배열로 할라구 했더니만 허접이라 그런지 안돼더군여...
예상테이블 에서 결과 테이블로 옮기는대 배열을 사용해서 옮기는 방법좀 갈켜 주세요..시간이 허락하신다면 자세히요..
고수님들의 따뜻한 손길 부탁드립니다..
아래 처럼 하시면 되지 않을듯..
for i := 0 to 원래테이블.FieldCount - 1 do
넣을테이블.FieldByName( 원래테이블.Fields[i].FieldName ).Value :=
원래테이블.FieldByName( 원래테이블.Fields[i].FieldName ).Value;
이럼. 원래 테이블의 내용이 모두 넣을 테이블레 다 넣어 지겠져......
글고.. 위처럼.. 필드의 내용을 더하신다면..
tot := 0;
for i := 0 to 원래테이블.FieldCount - 1 do
If Pos('_',원래테이블.Fields[i].FieldName) = 1 Then
tot := tot + 원래테이블.FieldByName( 원래테이블.Fields[i].FieldName ).Value;
하시면 되지 않을까.. 흐미.. 온라인상에 쓰니깐.. 디게 어렵당.. 막 좌우로 WordWrap되니깐. 무지 햇갈리네.........
그럼.. 참고 하시길...