使用SQL EXECUTE執行SQL陳述式
應用
SQL EXECUTE可用來與許多SQL指示連接。
需求
- 密碼555343
- 表格存在
- 適合的表格名稱
表格名稱與表格欄的開頭必須是字母,並且不得包含算術運算子(例如+),由於SQL指令,當輸入資料或讀出資料時,這些字元會造成問題。
功能說明
控制器在SQL EXECUTE命令下提供以下SQL陳述式:
指示 | 功能 |
---|---|
SELECT | 選擇資料 |
CREATE SYNONYM | 建立同義字(用短名稱取代長路徑名稱) |
DROP SYNONYM | 刪除同義字 |
CREATE TABLE | 產生表格 |
COPY TABLE | 複製表格 |
RENAME TABLE | 將表格更名 |
DROP TABLE | 刪除表格 |
INSERT | 插入表格列 |
UPDATE | 更新表格列 |
DELETE | 刪除表格列 |
ALTER TABLE |
|
RENAME COLUMN | 表格欄更名 |
SQL EXECUTE含SQL指示SELECT
SQL伺服器逐列將資料放入結果集內。這些列以遞增方式編號,從0開始。這些列編號(INDEX)使用SQL指令FETCH和UPDATE。
SQL EXECUTE結合SQL指示SELECT,選擇表格值、將其傳輸至結果集並總是在處理內開啟交易。不同於SQL指令SQL SELECT,SQL EXECUTE與SELECT指示的組合允許同時選擇多個欄與列。
在功能SQL ...“SELECT...WHERE..."內,可輸入搜尋標準。藉此讓您限制要傳輸的列數。若不使用此選項,則會載入表格內所有列。
在功能SQL ...“SELECT...ORDER BY..."內,可輸入排列標準。此輸入構成欄指定以及ASC遞增或DESC遞減的關鍵字,若您不使用此選項,則以隨機順序儲存這些列。
使用功能SQL ... "SELECT...FOR UPDATE",可鎖定選取的列用於其他應用。 其他應用可繼續讀取這些列,但是無法變更。 若對表格輸入進行變更,則絕對需要使用此選項。
空白結果集:若沒有列與選擇條件匹配,則SQL伺服器回傳有效的HANDLE但無表格輸入。
條件 | 程式編輯 |
---|---|
等於 | = == |
不等於 | != <> |
小於 | < |
小於或等於 | <= |
大於 | > |
大於或等於 | >= |
空 | IS NULL |
未清空 | IS NOT NULL |
連結多個的情況: | |
邏輯AND | AND |
邏輯OR | OR |
範例
11 SQL BIND Q881 "Tab_Example.Position_Nr" | |
12 SQL BIND Q882 "Tab_Example.Measure_X" | |
13 SQL BIND Q883 "Tab_Example.Measure_Y" | |
14 SQL BIND Q884 "Tab_Example.Measure_Z" | |
. . . | |
20 SQL Q5 "SELECT Position_Nr,Measure_X,Measure_Y, Measure_Z FROM Tab_Example" |
20 SQL Q5 "SELECT Position_Nr,Measure_X,Measure_Y, Measure_Z FROM Tab_Example WHERE Position_Nr<20" |
20 SQL Q5 "SELECT Position_Nr,Measure_X,Measure_Y, Measure_Z FROM Tab_Example WHERE Position_Nr==:’Q11’" |
20 SQL Q5 "SELECT Position_Nr,Measure_X,Measure_Y, Measure_Z FROM ’V:\table\Tab_Example’ WHERE Position_Nr<20" |
0 BEGIN PGM SQL_CREATE_TAB MM | |
1 SQL Q10 "CREATE SYNONYM NEW FOR 'TNC:\table\NewTab.TAB'" | ; 建立同義字 |
2 SQL Q10 "CREATE TABLE NEW AS SELECT X,Y,Z FROM 'TNC:\prototype_for_NewTab.tab'" | ; 建立表格 |
3 END PGM SQL_CREATE_TAB MM |
0 BEGIN PGM SQL_CREATE_TABLE_QS MM | |
1 DECLARE STRING QS1 = "CREATE TABLE " | |
2 DECLARE STRING QS2 = "'TNC:\nc_prog\demo\Doku\NewTab.t' " | |
3 DECLARE STRING QS3 = "AS SELECT " | |
4 DECLARE STRING QS4 = "DL,R,DR,L " | |
5 DECLARE STRING QS5 = "FROM " | |
6 DECLARE STRING QS6 = "'TNC:\table\tool.t'" | |
7 QS7 = QS1 || QS2 || QS3 || QS4 || QS5 || QS6 | |
8 SQL Q1800 QS7 | |
9 END PGM SQL_CREATE_TABLE_QS MM |