(3)用SELECT-SQL命令創(chuàng )建查詢(xún)
常用的格式:
SELECT 表名1. 字段名1 [AS 標題名1], 表名1. 字段名2 [AS 標題名2], … &&在源表中要查詢(xún)的字段 AS新表中字段標題
FROM 數據庫名! 表名1 [,數據庫名! 表名2 ] [, 數據庫名! 表名3 ] &&源表
[TO FILE 文本文件名 | into table | into cursor 新表文件名 ] &&查詢(xún)結果去向
[ WHERE 選定條件] &&查詢(xún)的條件
[GROUP BY 分組字段名 ]
[HAVING 分組中的滿(mǎn)足條件 ]
[ORDER BY 排序字段名1 [ASC | DESC] [, 排序字段名2 [ASC | DESC] ...]]
示例:
瀏覽學(xué)生中的查詢(xún)學(xué)生 student.qpr :
SELECT 表xs.xh as 學(xué)號, 表xs.xm as 姓名, 表xs.xb as 性別, ;
表xs.csrq as 出生日期, 表xs.bj as 班級名稱(chēng);
FROM 數據test!表xs;
WHERE 表xs.bj =cs1;
ORDER BY 表xs.xh;
INTO TABLE xs
瀏覽成績(jì)中的按課程查詢(xún) sub_cj.qpr :
SELECT 表xs.bj as 班級名稱(chēng), COUNT(表xs.xh) as 班級人數, AVG(表cj.cj) as 平均分, ;
MAX(表cj.cj) as 最高分, MIN(表cj.cj) as 最低分;
FROM 數據test!表xs, 數據test!表cj, 數據test!表kc;
WHERE 表cj.xh = 表xs.xh;
AND 表kc.kcm = 表cj.kcm;
AND 表cj.kcm = sc1;
GROUP BY 表xs.bj;
ORDER BY 表xs.bj;
INTO TABLE sub_cj
4.2 創(chuàng )建視圖
1. 視圖的特點(diǎn)
1) 視圖是存在于數據庫中的一個(gè)虛表,不以獨立的文件形式保存;
2) 視圖中的數據是可以更改的,它不僅具有查詢(xún)的功能,且可以把更新結果反映到源數據表中;
3) 視圖打開(kāi)時(shí),其基表自動(dòng)打開(kāi),但視圖關(guān)閉時(shí),其基表并不隨之自動(dòng)關(guān)閉;
4) 視圖的數據源可以是自由表、數據庫表或另一個(gè)視圖。
2. 用視圖設計器創(chuàng )建本地視圖[圖例]
從項目管理器中選擇一個(gè)數據庫 → 選擇本地視圖 → 單擊新建按鈕 → 選擇新視圖 → 添加所需的數據表 → 在視圖設計器中按照與創(chuàng )建查詢(xún)相同的步驟(2)~(6)建立視圖 → 設置更新條件 → 保存視圖 → 給出視圖名稱(chēng) → 關(guān)閉視圖設計器(可以先運行一下看看)。
創(chuàng )建參數化視圖:
在篩選頁(yè)面的實(shí)例框中輸入: ?參數名 → 從查詢(xún)菜單中選擇視圖參數 → 在對話(huà)框中給出參數名并選擇參數類(lèi)型 → 確定 → 保存視圖 → 給出視圖名稱(chēng) → 關(guān)閉視圖設計器(可以先運行一下看看)。
3. 用視圖向導創(chuàng )建本地視圖
從項目管理器中選擇一個(gè)數據庫 → 選擇本地視圖 → 單擊新建按鈕 → 選擇視圖向導 → 選取字段 → 關(guān)聯(lián)表 → 記錄操作范圍 → 篩選記錄 → 排序記錄 → 選擇保存方式→ 完成。
4. 用CREATE SQL VIEW 命令創(chuàng )建視圖
打開(kāi)數據庫,用命令來(lái)創(chuàng )建視圖:
OPEN DATABASE 數據庫名
CREATE SQL VIEW 視圖文件名 AS SQL-SELECT 語(yǔ)句
例: OPEN DATABASE SJ
CREAT SQL VIEW SCORE AS SELECT SJCJ.XH, SJCJ.CJ ;
FROM SJ!SJCJ WHERE SJCJ.KCH=”計算機基礎”
5. 視圖的使用
用菜單方式對視圖中的記錄進(jìn)行編輯的方法與操作數據表相同。也可用以下命令操作。
視圖操作基本命令
打開(kāi)視圖文件并瀏覽 OPEN DATABASE 數據庫名
USE 視圖文件名
BROWSE
修改視圖 MODIFY VIEW 視圖文件名
視圖重命名 RENAME VIEW 原視圖文件名 TO 新視圖文件名
刪除視圖 DELETE VIEW 視圖文件名
6.利用視圖更新源表數據
可在視圖設計器的更新條件頁(yè)面中進(jìn)行如下設置來(lái)實(shí)現對源表數據的更新:
1)從表框中選擇想要更新的源表;
2)在字段名框中單擊一個(gè)字段前關(guān)鍵列? 和更新列 ? ,使其作為主關(guān)鍵字和可更新字段;
3)將發(fā)送SQL 更新復選框選中
4.3 SQL 語(yǔ)言中的命令語(yǔ)句
SQL是一種日趨流行的標準的數據庫系統管理語(yǔ)言,能使數據檢索異常地方便、靈活。
VFP5.0支持的7條SQL命令一覽表
命令 功能 示例 備注
CREATE TABLE -SQL 創(chuàng )建一個(gè)指定字段的表 create table xs (;
xh c(4) default "1201" primary key,;
xm c(6), ;
xb c(2) check xb="男" or xb="女" error "性別只能是男或女" default "女",;
nl n(2) null ) 新表的每個(gè)字段由名稱(chēng)、類(lèi)型、精度、比例、是否支持 NULL 值和參照完整性規則來(lái)定義,可從命令本身或數組中獲得這些定義。
CREATE CURSOR-SQL 創(chuàng )建一個(gè)臨時(shí)表 CREATE CURSOR teacher ;
(TeacherID N(5), Name C(20), Address;
C(30),OfficeNo C(8) NULL, Specialty M)
ALTER TABLE - SQL 以編程方式修改一個(gè)已存在的表的結構。 ALTER TABLE xscj ADD COLUMN kcmc C(14) 可以修改表中每個(gè)字段的名稱(chēng)、類(lèi)型、精度、比例、是否支持 NULL 值和參照完整性規則。
ALTER TABLE cj;
ALTER COLUMN cj SET CHECK cj >= 0;
ERROR " 成績(jì)不能為負數"
SELECT - SQL 從一個(gè)或多個(gè)表中檢索數據。 SELECT 表xs.xh, 表xs.xm, 表xs.xb, ;
FROM 數據test!表xs;
WHERE 表xs.xh >'81991025';
ORDER BY 表xs.xh 可以用union命令連接兩個(gè)條件。
DELETE - SQL 使用 SQL 語(yǔ)句將表中的記錄加上刪除標記。 DELETE FROM cj WHERE cj<60
INSERT - SQL 在已存在表的末尾追加一條新記錄 INSERT INTO xs(xh,xm,xb) valueS;
("8399101", "張麗", "女") 新記錄包含的數據列在 INSERT 命令中,或者來(lái)自數組。
UPDATE - SQL 更新表中的記錄 UPDATE cj SET cj = cj*1.05 WHERE cj>80 可以基于 SELECT - SQL 語(yǔ)句結果更新記錄
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請
點(diǎn)擊舉報。