熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> PB編程 >> 正文

在PB中動態修改SQL語句[2]

2013-11-23 17:25:38  來源: PB編程 
    dw_settransobject(sqlca)
  sql_string=dw_Describe(DataWindowTableSelect)

  // Find the first occurrence of old_str
  start_pos = Pos(sql_string old_str start_pos)

  // Only enter the loop if you find old_str
  DO WHILE start_pos >

  // Replace old_str with new_str
  sql_string = Replace(sql_string start_pos &
  Len(old_str) new_str)

  // Find the next occurrence of old_str
  start_pos = Pos(sql_string old_str &
  start_pos+Len(new_str))
  LOOP

  sql_new=sql_string+ where …… //增加where字句

  //判斷setsqlselect 函數調用是否成功 不成功則返回
  if (dw_setsqlselect(sql_new)=) then
    messagebox(錯誤不能修改SQL語句!Exclamation!)
    return
  end if

  dw_settransobject(sqlca)
  dw_retrieve()

  使用SetSQLSelect有一定的要求和限制更改後的SELECT語句在結構上必須與原先的語句匹配在執行SetSQLSelect函數之前必須用SetTrans或SetTransObject函數設置DataWindow控件的內部事務對象另外 DataWindow對象的數據源必須是一個不帶參數的SELECT語句如果需要使用檢索參數可以在程序代碼中修改SQL Select語句

[]  []  


From:http://tw.wingwit.com/Article/program/PB/201311/24559.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.