지금 현재 엑셀로 받은 데이터를 그리드에 넣구서 그걸을 테이블생성해서
sql에 저장할려고 하거던여
지금 그리드의 컬럼만큼 필드를 생성할려고 합니다..
아까 ^-^분의 도움으로 테이블생성하는거까지는 도움을 받았는데여..
그리드의 컬럼만큼 필드를 생성하고 싶습니다..
Close;
Sql.Clear;
Sql.Add('CREATE TABLE ' + Edit1.Text + '( ');
Sql.Add('AA_DATETI VARCHAR(8) NOT NULL, ');
Sql.Add('AA_NAME00 VARCHAR(20) NULL, ');
Sql.Add('AA_ADDRES VARCHAR(50) NULL, ');
Sql.Add('AA_TEL000 VARCHAR(20) NULL ');
Sql.Add(' ) ' );
이러케 생긴것을 그리드컬럼만큼 for문으로 돌려서 필드값을 생성할려고여
그리드의 컬럼 값이 4 에여...그럼 for문으로 테이블의 필드명은 1,2,3,4로
한다고 할때 For문을 어디가 어떻게 사용해야 하는지가 알고싶습니다
for j := 1 to Grid1.ColCount do 를 어디다가 적어주며,
필드명 j은 어떻게 적어줘야 되는지좀 알려주세여 아직초보라서 물어볼께
많아여 경험이 아직없어서요
총 16개의 필드가 만들어지는거군요...
Close;
Sql.Clear;
Sql.Add('CREATE TABLE ' + Edit1.Text + '( ');
for i := 1 to 4 do
begin
for j := 1 to Grid1.ColCount do
begin
Sql.Add('AA_DATETI' + IntToStr(i) +'_'+ IntToStr(j) + ' VARCHAR(8) NOT NULL, ');
Sql.Add('AA_NAME00' + IntToStr(i) +'_'+ IntToStr(j) + ' VARCHAR(20) NULL, ');
Sql.Add('AA_ADDRES' + IntToStr(i) +'_'+ IntToStr(j) + ' VARCHAR(50) NULL, ');
if (i = 4) and
(j = Grid1.ColCount) then
begin
Sql.Add('AA_TEL000' + IntToStr(i) +'_'+ IntToStr(j) + ' VARCHAR(20) NULL ');
end else begin
Sql.Add('AA_TEL000' + IntToStr(i) +'_'+ IntToStr(j) + ' VARCHAR(20) NULL, ');
end;
end;
end;
Sql.Add(' ) ' );