本菜鳥第一次接觸delphi,因作業需要更新一下原有的腳本,發現下面這么改無效,不知道有什么問題? 謝謝大家!!
background:
1. 從表1拿到前一個任務的ID1
2. 通過ID1去匹配表2的ID1,得到對應的ID2
3. 然后通過ID2去表3匹配ID2,得到對應的前一個任務的Name
4. 同理得到當前任務的Name
5. 判斷當前執行的Name與前一個的Name是否一樣,如果一樣,則可以執行程式了
begin
PrevID1 := SQLSelect('ID1 FROM table1' +
' WHERE ID1 < ' + ExecutionContext.ID1 +
' AND X = ''' + ExecutionContext.X +
''' ORDER BY ID1 DESC', 1); //拿到前一個任務的ID1
If ( PrevID1 <> nil ) and ( PrevID1.RowCount > 0 ) then
begin
PrevID2 := SQLSelect('ID2 FROM table2' +
' WHERE ID1 = ''PrevID1''',1); //拿到前一個任務的ID2
PrevName2 := SQLSelect('Name2 FROM table3' +
' WHERE ID2 = PrevID2 ',1); //拿到前一個任務Name
Execution_ID2 := SQLSelect('ID2 FROM table2' +
' WHERE ID1 = ExecutionContext.ID1 ',1); //拿到當前任務ID2
Execution_Name := SQLSelect('Name FROM table3' +
' WHERE ID2 = Execution.ID2 ',1); //拿到當前任務Name
If ( PrevName = Execution_Name ) then //判斷兩個任務Name是否一致
begin
XXXXX / /繼續下一步
end;
end;
end;
uj5u.com熱心網友回復:
SQLSelect應該是你系統里自己寫的一個函式吧。至于 他應該怎么用,那得根據你這函式是怎么寫的去確定了。uj5u.com熱心網友回復:
嗯,那請教一個別的問題吧,我之前在這個SQL的where后面加過MaterialID='''+ExecutionContext.MaterialID+''' 證明是能query到東西的,后面我想改成欄位來匹配,改成這樣 copy(MaterialID,1,7) = ''' + copy(ExecutionContext.MaterialID,1,7) + ''' 結果就不行了,不知道是什么原因轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/184791.html
標籤:數據庫相關
上一篇:Python網路爬蟲
