當前位置:首頁 » 編程語言 » vfp調用sql視圖命令
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

vfp調用sql視圖命令

發布時間: 2022-07-19 16:37:45

1. 求問VFP中 怎麼用sql語言創建一個視圖

網路摘抄,僅供參考!!!你可以用 VFP 後端開始編寫客戶/伺服器應用程序直到決定使用 MS SQL Server, 或 Oracle, 或 Informix, 或 Sybase, 或 DB/2 等等. 第一步. 基於視圖的數據輸入表單 在來到 VFP 客戶/伺服器應用程序的數據輸入表單時, 你可以用 SQL Pass-through (SPT), 它簡單的通過 ODBC 傳遞一個 SQL 串到數據源, 也可以使用遠程視圖, 這就意味著 DBC 中儲存的 SQL 語句生成臨時表產生的效果必需象 VFP 自己的表. SPT 將保存它的結果集到一個本地游標中, 因此你必需遍歷表單上的控制項並逐個綁定它們(例如, thisform.txtCustomer.Value = SQLResult.customer). 當然, 要更新伺服器需要由你自己創建適當的 SQL Update, Insert 和 Delete 語句, 不必提及也必須編碼的多用戶沖突檢查 -- 相當乏味的, 容易出錯的任務. 這是典型的在Visual Basic 處理事情的方法(因此你知道在VFP中必定有更好的辦法,呵呵…). 在另一方面,遠程視圖讓人不可相信地易於處理. 你所需要做的只是創建一個與表結構相同的視圖, 打開視圖(執行 SQL Select), 用操作 FoxPro 本地表相同的方法操作它所創建的臨時表, 然後發布 TableUpdate 命令. TableUpdate 自動為你創建 SQL Update, SQL Insert 和SQL Delete 語句並傳遞它們到你的工作站上的 ODBC 驅動管理器. ODBC 驅動管理器用 你已選定的ODBC 驅動程序來翻譯 SQL 為後端可理解的語法. 它是如此簡單. 因此根據以下理由,我薦議數據輸入表單使用遠程視圖: 一個代碼集. 相同的代碼集可以處理 VFP 表或 SQL Server上的遠程視圖. 因此你只需要本地視圖或遠程視圖. 性能. 在多種方法中, 視圖可以快於 SPT ,因為 TableUpdate (一個低級 VFP 函數) 自動為你生成 SPT 代碼. 你自己生成SQL update 和執行代碼佔用的時間將比 TableUpdate 多. 如果你考慮 TableUpdate 到底做了多少  掃描改變了的緩沖, 決定更新類型, 讀取視圖屬性, 生成批處理 SQL 語句, 傳遞它們到 ODBC 驅動管理器, 返回一個成功/失敗標志, 並清除修改緩存  我相信你同意它幹得比 SPT 好. 以上所有處理沒有語法錯誤. 視圖屬性提供額外了多於SPT 的功能. 例如, 要模仿一個 5個計數的 BatchUpdate, 你需要在傳遞它們到 ODBC 前,串接5個用逗號分開的 SQL 語句. SPT 在客戶/伺服器程序中,也有一個非常重要的地方; 我將在第三步中作更多的描述. 關於本地視圖和遠程視圖的基本用途的更多信息,參閱 VFP 開發者指南. 第二步. 所有與數據相關的命令將通過一個函數執行 轉換應用程序到客戶/伺服器時的最困難的地方是你的代碼中的類似於 SQL 語句, Zap, Pack, Reindex, Seek這樣的硬編碼的數據訪問命令. 換句話說, 你的程序是不是象以下所示一樣? Function PurgeOrders * 該函數清除 (刪除) 傳遞日期前已發運的訂單. Lparameter dShipDate Local lcMsg Select Count(*) as OrderCnt from Orders ; Where ShipDate <= dShipDate Into Cursor tcPurge If _Tally = 0 lcMsg = "沒有要清除的訂單." Else Delete from Orders Where ShipDate <= dShipDate lcMsg = Trim(Str(_Tally)) + ; " 訂單已從系統中清除." Endif MessageBox(lcMsg) EndFunc 這種類型的 SQL 語句僅在能在系統中找到表時可以很好的工作. 在客戶/伺服器的世界中, 你通過連接句柄與數據源通信. 對於視圖, 遠程連接 Create SQL View 的 子句允許視圖訪問遠程數據. 而且對於 in-line SQL, FoxPro 函數 SQLExec() 用於通過 ODBC 傳遞 SQL 語句到伺服器. 以生錯誤時它返回 1,成功時返回 1, 如果有一個非同步查詢等待完成則返回0. 作為例子, 以下是如何用 SQL Pass-through 獲取一個指定客戶的銷售訂貨: llSuccess = SQLExec(goEnv.nHandle, ; "Select * From ORDERS Where Customer = ?

2. VFP調用SQL Server資料庫,怎麼更新資料庫

你的這種方式叫做SPT方式,是指SQL Pass Through函數,簡稱SPT,即通過這類函數發送SQL後台命令到SQL資料庫執行,然後接收返回數據的一種形式。
用VFP做過C/S形式的程序一般有兩種方法,一種是用遠程視圖方式,一種就是直接發送SQL命令的SPT方式。
SPT方式比較適用於非常熟悉SQL操作和SQL語法的高級用戶使用,對於喜歡偷懶而且對SQL不甚了解的還是建議使用視圖比較好,這樣可以少考慮很多很多問題。

3. 怎麼樣在vfp中調用SQL中的函數

在VFP中如何調用其它程序
-------------------------------------------------------------

Declare Long WinExec In kernel32 String,Long
=WinExec("notepad.exe",1)
Clear Dlls

WinExec(one.exe,SW_SHOW);
裡面的SW_SHOW意思是什麼
WinExec()函數第二個參數是什麼意思
如果我想以無參數運行one.exe應該怎麼辦??
SW_SHOW表示以當前大小激活運行後的程序窗口並顯示它。
第二個參數是控製程序主窗口的顯示方式
第二個參數可能的取值為 :
************************* 窗口指定可視性定義 **********************************API函數ShellExecute中最後一個參數及wscript.shell方法中的第2個參數也是這樣定義的。
0 SW_HIDE 隱藏窗口,活動狀態為原調用窗口
6 SW_MINIMIZE 最小化窗口,活動狀態為原調用窗口
9 SW_RESTORE 用原來的大小和位置顯示一個窗口,同時令其進入活動狀態
5 SW_SHOW 用當前的大小和位置顯示一個窗口,同時令其進入活動狀態
3 SW_SHOWMAXIMIZED 最大化窗口,並將其激活
2 SW_SHOWMINIMIZED 最小化窗口,並將其激活
7 SW_SHOWMINNOACTIVE 最小化一個窗口,同時不改變活動窗口

4. VFP中SQL語句中視圖刪除命令

sql中delete,drop
,truncate都代表刪除,但3者又有一些區別
1.
truncate和
delete只刪除數據不刪除表的結構(定義)
drop語句將刪除表的結構被依賴的約束(constrain),觸發器(trigger),索引(index);
依賴於該表的存儲過程/函數將保留,但是變為invalid狀態.
2.delete語句是dml,這個操作會放到rollback
segement中,事務提交之後才生效;如果有相應的trigger,執行的時候將被觸發.
truncate,drop是ddl,
操作立即生效,原數據不放到rollback
segment中,不能回滾.
操作不觸發trigger.
3.delete語句不影響表所佔用的extent,
高水線(high
watermark)保持原位置不動
顯然drop語句將表所佔用的空間全部釋放
truncate
語句預設情況下見空間釋放到
minextents個
extent,除非使用reuse
storage;
truncate會將高水線復位(回到最開始).
4.速度,一般來說:
drop>;
truncate
>;
delete
5.安全性:小心使用drop
和truncate,尤其沒有備份的時候.否則哭都來不及
使用上,想刪除部分數據行用delete,注意帶上where子句.
回滾段要足夠大.
想刪除表,當然用drop
想保留表而將所有數據刪除.
如果和事務無關,用truncate即可.
如果和事務有關,或者想觸發trigger,還是用delete.
如果是整理表內部的碎片,可以用truncate跟上reuse
stroage,再重新導入/插入數據
在實際應用中,三者的區別是明確的。
當你不再需要該表時,

drop;
當你仍要保留該表,但要刪除所有記錄時,

truncate;
當你要刪除部分記錄時(always
with
a
WHERE
clause),

delete.
而alter是對表結構的修改.
希望對你理解有幫助。

5. VFP如何對SQL操作

1.通過遠程視圖remote view,首先在項目管理器裡面設置ODBC與SQLSERBVER連接,然後建立遠程視圖,可以完成對SQLSERVER資料庫操作.VFP命令就可以實現對其控制.
2.通過SPT,就是寫SQLSERVER語句,通過SQLEXEC命令發送到SQLSERVER端執行.
3.在數據環境中使用CursorAdapter,這個類提供了包括ADO,ODBC,XML,NATIVE等四種數據源,但是操作不如遠程視圖直接.
4.推薦你首先用遠程視圖,首先進入控制面板中的ODBC管理器,有導航器建立一個ODBC,然後在VFP項目管理器的資料庫中有一個連接建立好,接著就可以建立遠程視圖了,學會了建立遠程視圖,之後對其進行操作,你再高SPT,CursorAdapter就容易比較接受.
5.自己學著做一下吧,很簡單的,有問題找我.

接著。。。。。

1、在SQLSERVER裡面創建一個資料庫
2、設置ODBC,去控制面板裡面找,建立一個和剛建立的資料庫關聯數據源。
3、進入VFP,創建項目管理器,項目管理器里有個資料庫,建立一個資料庫,資料庫下面有個連接,選擇剛才建立的數據源。
4、創建遠程視圖
5、對遠程視圖進行操作,和對表操作差不多,對表進行存檔操作VFP用REPLACE命令,對視圖操作用tableupdate(.t.)
6、賺你這200分不容易呀,老闆

6. 關於VFP中使用SQL語句的命令幫幫我,拜託大家!

1、sele * from a.dbf where 姓名=「張三」
2、sele * from a.dbf where 性別=.t.
3、sele 部門,sum(工資) as 工資總額 from a.dbf group by 部門
4、不會

7. 關於vfp中的SQL語句~

您可以在VFP的【工具】菜單下【選項】中將"文件位置"中的"默認目錄"設置成考生目錄即可(E:\WEXAM\00000000)。
另外,使用SQL命令不需要先打開表的哦!

8. VFP中新建視圖的命令是什麼啊

modify view 命令
請參閱

顯示視圖設計器,從中可以修改已存在的 SQL 視圖。

語法

MODIFY VIEW ViewName [REMOTE]

參數
ViewName

指定要修改的視圖名稱。

REMOTE

指定該視圖是一個使用遠程表的遠程視圖。如果省略 REMOTE 子句,可以修改一個基於本地表的視圖。

說明

使用 CREATE SQL VIEW 命令創建 SQL 視圖。
包含 SQL 視圖的資料庫必須以獨占方式打開。要以獨占方式打開資料庫,在 OPEN DATABASE 命令中包含 EXCLUSIVE 子句。