593 |
|
Query.SQL.Text := 'CREATE INDEX idtargetid ON linkmap (target_id);'; |
594 |
|
Query.ExecSQL; |
595 |
|
Query.SQL.Text := |
596 |
< |
'CREATE TABLE rawmap ( id AUTOINC PRIMARY KEY, src_id INTEGER, ' + |
597 |
< |
'src_link_offset INTEGER, sep BOOLEAN, size INTEGER, ' + |
596 |
> |
'CREATE TABLE rawmap ( id AUTOINC PRIMARY KEY, name STRING(32), src_id INTEGER, ' + |
597 |
> |
'src_link_offset INTEGER, sep BOOLEAN, type STRING(8), size INTEGER, ' + |
598 |
|
'data BLOB BlobCompressionMode 9 BlobBlockSize 1024 BlobCompressionAlgorithm ZLib);'; |
599 |
|
// Query.SQL.Text:='CREATE TABLE rawmap ( id AUTOINC PRIMARY KEY, src_id INTEGER, src_link_offset INTEGER, size INTEGER, data BLOB BlobCompressionAlgorithm None );'; |
600 |
|
Query.ExecSQL; |
601 |
|
Query.SQL.Text := 'CREATE INDEX idsrcid ON rawmap (src_id);'; |
602 |
|
Query.ExecSQL; |
603 |
+ |
Query.SQL.Text := 'CREATE INDEX idtype ON rawmap (type);'; |
604 |
+ |
Query.ExecSQL; |
605 |
|
Query.SQL.Text := |
606 |
|
'CREATE TABLE datfiles ( id INTEGER PRIMARY KEY, extension CHAR(4), ' + |
607 |
|
'name STRING(128), contenttype INTEGER, size INTEGER, ' + |
668 |
|
Connection.LoadRawFile(FileID, RawLinks[i].SrcOffset, tempdata); |
669 |
|
mimecoder := TStringFormat_MIME64.Create; |
670 |
|
Query.SQL.Text := |
671 |
< |
'INSERT INTO rawmap (src_id,src_link_offset,sep,size,data) VALUES (' + |
671 |
> |
'INSERT INTO rawmap (name,src_id,src_link_offset,sep,type,size,data) VALUES (' + |
672 |
> |
'"' + RawLinks[i].Name + '", ' + |
673 |
|
IntToStr(FileID) + ', ' + IntToStr(RawLinks[i].SrcOffset) + ',' + |
674 |
|
BoolToStr(RawLinks[i].LocSep) + ', ' + |
675 |
+ |
'"' + RawLinks[i].RawType + '", ' + |
676 |
|
IntToStr(RawLinks[i].RawSize) + ', ' + |
677 |
|
'MimeToBin("' + MimeCoder.StrTo(@tempdata[0], RawLinks[i].RawSize) + '") );'; |
678 |
|
Query.ExecSQL; |
681 |
|
else |
682 |
|
begin |
683 |
|
Query.SQL.Text := |
684 |
< |
'INSERT INTO rawmap (src_id,src_link_offset,sep,size) VALUES (' + |
684 |
> |
'INSERT INTO rawmap (name,src_id,src_link_offset,sep,type,size) VALUES (' + |
685 |
> |
'"' + RawLinks[i].Name + '", ' + |
686 |
|
IntToStr(FileID) + ', ' + IntToStr(RawLinks[i].SrcOffset) + ', ' + |
687 |
< |
BoolToStr(RawLinks[i].LocSep) + ', 0);'; |
687 |
> |
BoolToStr(RawLinks[i].LocSep) + ', ' + |
688 |
> |
'"' + RawLinks[i].RawType + '", ' + |
689 |
> |
'0);'; |
690 |
|
Query.ExecSQL; |
691 |
|
end; |
692 |
|
end; |