2013-03-20 44 views
-2

我使用此代碼登錄的許多行(SQL.Add)使複雜的腳本,我要建:如何登錄SQL腳本代碼在Delphi從的TStringList到文件

例:

[...] 
SQL.Add('ENTITY_ID, PRO_CODE, PHASE_CODE, TASK_CODE, PERIOD_REF'); 
SQL.Add('from ' + trim(SourceJrnl) + ' where'); 
SQL.Add('MASTER_ID = ' + IntToStr(TranID) + ' and');... 
[...] 


{ for debugging only } 
for i := 0 to SQL.Count-1 do 
    ShowMessage('Line #' + IntToStr(i+1) + ' : '+ SQL.Strings[i]); 

任何簡單的方法(函數)可以將行寫入文件中的字符串列表或備忘錄。

[編輯]對不起。沒有備忘錄或字符串列表,但是一個簡單的日誌文件。

+0

你的問題沒有意義。如果你想把它寫在備忘錄中,就寫在那裏,或者更好地解釋你之後的事情。 – jachguate 2013-03-20 00:52:15

+2

MyMemo.Lines.Assign(SQL) – 2013-03-20 00:53:06

+0

對不起 - 我想讓行被記錄在文本文件中。有一個日誌功能或非可視化組件會很好。謝謝 – volvox 2013-03-20 01:12:33

回答

2

調用SQL.SaveToFile會將查詢寫入文件,但它會打開以前的文件內容,因此您只能看到一個查詢而沒有其他日誌。相反,請閱讀SQL.Text屬性以獲取單個字符串中的所有行,然後使用您的其他程序的任何日誌記錄技術將其寫入日誌文件。在捏合中,將一行文本寫入文件的一種簡單方法是呼叫Writeln,但是要撥打people have asked about real logging libraries before