當前位置:首頁 » 數據倉庫 » 資料庫編程題庫
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

資料庫編程題庫

發布時間: 2023-02-03 06:21:49

『壹』 幫我做下資料庫編程題,謝謝

創建視圖:
create view price_view as
select b.mname as 商場名,a.ino as 商品號,c.iname 商品名 as ,a.price as 價格
from sales a,market b,item c
where a.mno = b.mno and a.ino = c.ino
統計平均售價
select 商品名,avg(價格) as 平均售價 from price_view group by 商品名

『貳』 編程題目:從資料庫「BOOK」的表「BOOKINFO」中,查詢「定價」在50到100之間的圖書信息,要求

create database company_info

on

primary (name=sampledata,

filename='d:program filesmicrosoft sql servermssqldatasample。mdf',

size=10mb,

maxsize=15mb,

filegrowth=20%)

log on

(name=samplelog。


(2)資料庫編程題庫擴展閱讀:

在建立資料庫時通過@設定一個欄位參數的默認值。如果@的欄位參數是既有輸入又有輸出值的,也就是在調用了這個存儲過程時,如果所指定的參數值是需要輸入的參數,同時也需要在結果中輸出的,則該項必須為OUTPUT。

而如果@的欄位參數只是做輸出參數用,則可以用CURSOR,同時在使用該參數時,必須指定VARYING和OUTPUT這兩個語句。

『叄』 SQL 編程題

1.
create table Student
(
id int not null identity(1,1),
Sno nvarchar(50) not null unique,
Sname nvarchar(20),
Ssex nvarchar(2),
Sage int,
Sdept nvarchar(100),
)

2.select * from Student where Sdept='計算機' order by Sno desc

3.select Sno,Sname,Ssex from Student where Sno in (select Sno from Course where Ccredit = 5 and Cno in (select Cno from SC where Grade > 60))

『肆』 哪位大俠可以提供一些mysql資料庫的題庫,一定要帶答案的!將感激不盡!!

一、不定項選擇題(共40題,每小題2.5分,總分100分)
1. 資料庫管理系統的發展歷經了如下那些模型階段( ACDE )
A. 層次模型 B. 結構模型 C. 關系模型
D. 網狀模型 E.對象模型
2. 關系型資料庫的核心單元是( B )
A. 對象 B. 表
C. 行 D. 列
3. 對於關系型資料庫來說,表之間存在下面那些關系( ABC )
A. 一對一關系 B. 一對多關系
C. 多對多關系 D. 繼承關系
4. 在SQL中,下面對於數據定義語言(DDL)描述正確的是( D )。
A. DDL關心的是資料庫中的數據 B. 完成數據的增、刪、改、查操作
C. 控制對資料庫的訪問 D. 定義資料庫的結構
5. MySQL是一種( C )資料庫管理系統。
A. 層次型 B. 網路型 C. 關系型 D. 對象型
6. SQL中,下列操作有語法錯誤的是( B )
A. AGE IS NOT NULL B. NOT(AGE IS NULL)
C. SNAME=『王五』 D. SNAME=『王%』
7. SQL中,下列關於創建、管理資料庫的操作語句不正確的是( CDE )
A. CREATE DATABASE Instant B. USE Instant C. NEW DATABASE Instant
D. Connection Instant E. Delete DATEBASE Instant
8. 在MySQL中,不存在的數據類型是( F )。
A. INT B. TEXT C. DECIMAL
D. VARCHAR E. DATETIME F. VARCHAR2
9. 在MySQL中,下列關於創建資料庫表的描述正確的是( C )。
A. 在創建表時必須設定列的約束
B. 在刪除表的時候通過外鍵約束連接在一起的表會被一同刪除
C. 在創建表時必須設置列類型
D. 通過CREATE TABLE new_t SELECT * FROM old_t復製表的同時,表的約束能夠一起被復制到新表中
10. 根據數據完整性實施的方法,可以將其分為( ACDF )
A. 實體完整性 B. 表完整性 C.域完整性
D. 引用完整性 E. 記錄完整性 F.用戶自定義完整性
11. 下面關於域完整性的方法,不正確的是( A )。
A. 主鍵約束 B. 外鍵約束 C.檢查約束
D. 非空約束 E. 默認值
12. 下面關於創建和管理索引正確的描述是( C )。
A. 創建索引是為了便於全表掃描
B. 索引會加快DELETE、UPDATE和INSERT語句的執行速度
C. 索引被用於快速找到想要的記錄
D. 大量使用索引可以提高資料庫的整體性能
13. SQL中,「AGE IN(20,22)」的語義是( D )。
A. AGE<=22 AND AGE >=20 B. AGE <22 AND AGE >20
C. AGE =20 AND AGE =22 D. AGE =20 OR AGE =22
14. 有一個關系:學生(學號,姓名,系別),規定學號的值域是8個數字組成的字元串,這一規則屬於( C )
A. 實體完整性約束 B. 參照完整性約束
C. 用戶自定義完整性約束 D. 關鍵字完整性約束
15. 下面SQL是來源於考試成績表t_exam:學號stuId、科目編號subId、成績score,考試日期:ex_date。有以下sql,它表示的意思是:( B )
Select stu_id,subId,count(*) as x
From t_exam
Where ex_date=』2008-08-08』
Group stu_id,subId
Having count(*)>1
Order by x desc
A. 找出』2008-08-08』這天某科考試2次及以上的學生記錄
B. 找出』2008-08-08』這天,某科考試2次及以上的學生記錄,考試次數多的放在前面
C. 找出』2008-08-08』這天,某科考試2次及以上的學生記錄,考試次數少的放在前面
D. 根據學號和學科分組,找出每個人考試科數,最後考試次數多的放在前面
16. EMP表如下所示,下面哪些SQL語句的返回值為3:( BD )
EMP
雇員號 雇員名 部門號 工資
001 張山 022000
010 王宏達01 1200
056 馬林生02 1000
101 趙敏 04
A. select count(*) from emp
B. select count(distinct 部門號) from emp
C. select count(*) from emp group by 雇員號
D. select count(工資) from emp
17. 下面那一項不是SELECT語句對數據的操作:( D )
A. 投影 B. 聯接 C. 並 D. 級聯
18. 下面關於SQL數據查詢操作描述正確的有:( ABD )
A. 投影操作是選擇對表中的哪些列進行查詢操作
B. 使用DISTINCT關鍵字可以過濾查詢中重復的記錄
C. 在模糊查詢中,通配符「%」表示匹配單個字元,而「_」表示匹配零個或多個字元
D. 在MySQL中使用LIMIT關鍵字限制從資料庫中返回記錄的行數
19. 在SQL語言中,條件「BETWEEN 20 AND 30」表示年齡在20到30之間,且( A )。
A. 包括20歲和30歲 B. 不包括20歲和30歲
C. 包括20歲,不包括30歲 D. 不包括20歲,包括30歲
20. SQL語言中,刪除EMP表中全部數據的命令正確的是( C )。
A. delete * from emp B. drop table emp
C. truncate table emp D. 沒有正確答案
21. 有關索引的說法錯誤的是( AD )
A. 索引的目的是為增加數據操作的速度
B. 索引是資料庫內部使用的對象
C. 索引建立得太多,會降低數據增加刪除修改速度
D. 只能為一個欄位建立索引
22. 下列哪個關鍵字在Select語句中表示所有列( A )
A. * B. ALL C. DESC D. DISTINCT
23. 在表中設置外鍵實現的是哪一類數據完整性( B )
A. 實體完整性 B. 引用完整性
C. 用戶定義的完整性 D. 實體完整性、引用完整性和用戶定義的完整性
24. 下面正確表示Employees表中有多少非NULL的Region列的SQL語句是( B )
A. SELECT count(* ) from Employees
B. SELECT count(ALL Region) from Employees
C. SELECT count(Distinct Region) from Employees
D. SELECT sum(ALL Region) from Employees
25. 下面可以通過聚合函數的結果來過濾查詢結果集的SQL子句是( C )
A. WHERE子句 B. GROUP BY子句
C. HAVING 子句 D. ORDER BY子句
26. t_score(stu_id,sub_id,score),即成績表(學號,科目編號,成績)。學生如果某科沒有考試,則該科成績錄入null。能夠獲取各位學生的平均成績的選項是( A )
A. select avg(nvl(socre,0)) from score group by stu_id
B. select stu_id,avg(sorce) from score
C. select stu_id,avg(score) from score
D. select stu_id,sum(score)/count(score) from score
27. 若要求查找S表中,姓名的第一個字為'王'的學生學號和姓名。下面列出的SQL語句中,哪個是正確的( B )
A. SELECT Sno,SNAME FROM S WHERE SNAME=′王%′
B. SELECT Sno,SNAME FROM S WHERE SNAME LIKE′王%′
C. SELECT Sno,SNAME FROM S WHERE SNAME LIKE′王_′
D. 全部
28. 若要求「查詢選修了3門以上課程的學生的學生號」,正確的SQL語句是( B )
A. SELECT Sno FROM SC GROUP BY Sno WHERE COUNT(*)> 3
B. SELECT Sno FROM SC GROUP BY Sno HAVING( COUNT(*)> 3)
C. SELECT Sno FROM SC ORDER BY Sno WHERE COUNT(*)> 3
D. SELECT Sno FROM SC ORDER BY Sno HAVING COUNT(*)>= 3
29. 對下面的查詢語句描述正確的是( D )
Select StudentID,Name,
(select count(*) from StudentExam
where StudentExam.StudentID = Student.StudentID) as ExamsTaken
from Student
order by ExamsTaken desc
A. 從Student表中查找StudentID和Name,並按照升序排列
B. 從Student表中查找StudentID和Name,並按照降序排列
C. 從Student表中查找StudentID、Name和考試次數
D. 從Student表中查找StudentID、Name,並從StudentExam表中查找與StudentID一致的學生考試次數,並按照降序排列

30. 下面題基於學生-課程資料庫中的三個基本表:
學生信息表:s(sno, sname, sex, age, dept) 主鍵為sno
課程信息表:c(cno, cname, teacher) 主鍵為cno
學生選課信息表:sc(sno, cno, grade) 主鍵為(sno, cno)
「從學生選課信息表中找出無成績的學生信息」的SQL語句是( C d )

A.

SELECT * FROM sc WHERE grade=NULL

B.

SELECT * FROM sc WHERE grade IS 『 』

C.

SELECT * FROM sc WHERE grade IS NULL

D.

SELECT * FROM sc WHERE grade =『 』

31. 當子查詢返回多行時,可以採用的解決辦法是( C )。
A. 使用聚合函數 B. Where條件判斷
C. 使用IN運算符 D. 使用Group by進行分組
32. 下面關於在子查詢中使用運算符描述不正確的是( D )。
A. 使用IN運算符用於查找欄位值屬於某一組值的行
B. 使用Exists運算符用於測試子查詢是否返回行,如果返回其值就為真
C. 使用ALL運算符用於測試子查詢結果集的所有行是否滿足指定的條件
D. 使用Any運算符用於測試子查詢結果集中的一行或多行不滿足指定的條件
33. 下面關於組合查詢描述不正確的是( D )。
A. 從一個表中獲取的數據必須和其它表中的數據具有相同的列數
B. 兩個表中相對應的列必須具有相同的數據類型
C. UNION的結果集列名與第一個SELECT語句的結果集中的列名相同
D. UNION的結果集列名與第二個SELECT語句的結果集中的列名相同
E. UNION ALL運算符返回每個數據集的所有成員
34. 下面關於聯接的描述正確的是( A )。
A. 內聯接使用比較運算符根據每個表共有的列值來匹配兩個表中的行
B. 左外聯接結果集包含從右邊的表返回的所有行
C. 右外聯接結果集包含從左邊的表返回的所有行
D. 全外聯接返回左表和右表中的所有匹配的行
35. 下面關於資料庫設計過程正確的順序描述是( C )。
A. 需求收集和分析、邏輯設計、物理設計、概念設計
B. 概念設計、需求收集和分析、邏輯設計、物理設計
C. 需求收集和分析、概念設計、邏輯設計、物理設計
D. 需求收集和分析、概念設計、物理設計、邏輯設計
36. ER圖屬於下面哪一種資料庫設計模型( B )。
A. 物理數據模型
B. 概念數據模型
C. 邏輯數據模型
D. 需求模型
37. 非主鍵必須完全依賴於主鍵列,這屬於下列範式的內容( BC )
A. 1NF B. 2NF C. 3NF D. 都沒有的
38. 如果一個欄位的數據必須來源另一個表的主鍵,那麼要在這個欄位上建立( B )。
A. PK(主鍵) B. FK(外鍵) C. UK(唯一鍵) D. 復合主鍵
39. 根據三個範式的定義,下面哪個選項的設計是正確的( C )
職工編號 姓名 工種 車間 車間主任
1001 李寧 車工 一車間 周傑
1002 王海 銑工 一車間 周傑
1003 趙亮 鉗工 二車間 吳明
1001 李寧 鉗工 二車間 吳明
A. 員工表、工種表、車間表
B. 員工表、工種表、車間表、車間主任表
C. 員工表、工種表、車間表、員工工種表、員工車間表
D. 以上設計均不正確

40. 下列說法中,哪些是正確的( BD )
A. RDBMS是資料庫管理系統的簡稱
B. 各行記錄都不能重復,是第二範式要求的
C. 在資料庫設計中一定要滿足第三範式
D. 索引越多,查詢越快,數據更新越慢

『伍』 有關資料庫的編程題:

1、查詢姓「李」的老師的個數;
SELECT COUNT(Tno) FROM Teacher WHERE Tname LIKE '李%'

2、查詢學過「c001」並且也學過編號「c002」課程的同學的學號、姓名;

SELECT Sno, Sname
FROM Student
WHERE sno IN(SELECT sno
FROM (SELECT Sno FROM SC WHERE Cno = 'c001') t1
(SELECT Sno FROM SC WHERE Cno = 'c002') t2
WHERE t1.sno = t2.sno)

3、查詢學過「葉平」老師所教的所有課的同學的學號、姓名;
SELECT Sno, Sname
FROM student
WHERE Sno IN(SELECT SC
FROM SC
WHERE CNO IN (SELECT CNO FROM Course WHERE Cname = '葉平')
GROUP BY SC HAVING COUNT(CNO) = (SELECT COUNT(CNO) FROM Course WHERE Cname = '葉平'))

4、查詢「c001」課程比「c002」課程成績高的所有學生的學號

SELECT C1.SC
FROM (SELECT SC, Score FROM SC WHERE Cno = 'c001') c1
(SELECT SC, Score FROM SC WHERE Cno = 'c002') c2
WHERE c1.SC = c2.SC
AND c1.Score > c2.Score
如果只有C1,而沒有C2成績,用這個好一點
SELECT SC
FROM (SELECT SC, Score FROM SC WHERE Cno = 'c001') c1
left join (SELECT SC, Score FROM SC WHERE Cno = 'c002') c2
ON c1.SC = c2.SC AND c1.Score > c2.Score

5、查詢平均成績大於60分的同學的學號和平均成績;
SELECT Sno, AVG(score)
FROM SC GROUP BY Sno Having AVG(score) > 60

6、查詢所有同學的學號、姓名、選課數、總成績;
SELECT stu.Sno, stu.Sname, COUNT(Cno), SUM(score)
FROM Student stu, SC
WHERE stu.Sno = Sc.sno
GROUP BY stu.sno, stu.Sname

7、查詢沒有學全所有課的同學的學號、姓名;
SELECT Sno, Sname
FROM SC
WHERE Sno NOT IN (SELECT Sno
FROM SC
GROUP BY SC
HAVING COUNT(CNO) < (SELECT COUNT(DISTINCT CNO) FROM SC))

『陸』 資料庫SQL編程題

declare @j int,@o int,@i int
set @i=1
set @j=0
set @o=0
while @i<=40
begin
if(@i%2=1)
set @j=@j+@i*@i
else
set @o=@o+@i*@i
set @i=@i+1
end
print 'x='+convert(char(5),@j)+',y='+convert(char(5),@o)

『柒』 資料庫編程題

1)select distinct 品牌 from 商品表2
2)select distinct 課程號 from 選課 as T ,選課 as S where T.學生號=@s1 and S.學生號=@s2 and T.課程號 = S.課程號
3)select sum(studnet_ID) from student group by major
4)select max(float) from proct_table group by category
5)你自己去想想看吧,之前的我不確定自己做的是不是對的。我也是最近才在學DB

『捌』 資料庫編程題編寫T-SQL語句查詢資料庫

1.
select XS_QK.學號,成績 from XS_KC inner join XS_QK on XS_KC.學號=XS_QK.學號
where 課程號='103' order by 成績

2.
select 課程號,average(成績) as 平均成績 from XS_QK group by 課程號

3.
select 姓名,性別,宿舍電話 from XS_KC inner join XS_QK on XS_KC.學號=XS_QK.學號
where 課程號='103' and 成績<60

『玖』 求救!幾道資料庫編程題

1:
main()
{int n,s=0,cy=0,cc=0,i;
float p;
for(i=0i<100;i++)
{printf("輸入學生成績");
scanf("%d",n);
s=s+n;
if(n>=90) cy+=1;
if(n<60) cc+=1;
}
p=s/100.0;
printf("總分是%d\n",s);
printf("平均粉是%f\n",p);
printf("90極其90以上人數是%d\n",cy);
printf(" 60以下人樹是:%d\n",cc);
getch();
}
2:時間有限,先到這里,以後再補

『拾』 資料庫技術與應用 Visual FoxPro 6.0之編程題

第一章 資料庫系統基礎知識
1.1 資料庫系統概述
1. 數據處理
數據:
是對事實、概念或指令的一種特殊表達形式,可以用人工的方式或自動化的裝置進行通信、翻譯轉換或者進行加工處理。 它包括兩類:一類是能參與數字運算的數值型數據;一類是不能參與數字運算的非數值型數據,如文字、圖畫、聲音、活動圖象等。
數據處理:
是對各種類型的數據進行收集、存儲、分類、計算、加工、檢索與傳輸的過程。
包括:收集原始數據、編碼轉換、數據輸入、數據處理、數據輸出。
2. 資料庫系統
(1) 資料庫(DataBase)
定義:是以一定的組織形式存放在計算機存儲介質上的相互關聯的數據的集合。
特點: 具有最小的冗餘度、具有數據獨立性、實現數據共享、安全可靠、保密性能好
(2)資料庫管理系統(DataBase Management System)
定義: 是操縱和管理資料庫的系統軟體。Visual FoxPro 屬於一種關系型資料庫管理系統。
數據語言:
數據定義語言(DDL): 用來建立所需的資料庫。
數據操作語言(DML): 用來對資料庫進行查詢和維護操作。
關系型資料庫使用的標准語言是結構化查詢語言(Structured Query Language, SQL)。
(3)資料庫系統(DataBase System)
定義: 是以資料庫應用為基礎的計算機系統。
組成:
資料庫
硬體(計算機硬體設備)
軟體(資料庫管理系統 、操作系統)
用戶(應用程序設計員、終端用戶、資料庫管理員 )
分類:層次型資料庫、網狀型資料庫、關系型資料庫
分代:第一代 非關系型資料庫系統,60年代末問世,包括層次型和網狀型。
第二代 關系型資料庫系統(RDBS),70年代中期問世。
第三代 對象-關系資料庫系統(ORDBS 、OOBDS),80年代中期至今。
上述三個概念之間的聯系:在資料庫系統中通過資料庫管理系統來建立和使用資料庫。
3.關系模型
三個領域: 現實世界→事物(對象、性質)
觀念世界→實體(對象、屬性)
數據世界→數據(記錄、欄位)
實體模型:即反映事物聯系的實體。
數據模型:即描述實體模型的數據。
數據模型的分類: 層次模型(採用樹型結構)
網路模型(採用無向圖型結構)
關系模型(採用二維表結構)
關系模型的性質:
二維表的記錄數隨數據的增加而改變,但其欄位數是相對固定的;二維表中的每一列均有唯一的欄位名;二維表中不允許出現完全相同的兩行二維表中行的順序、列的順序均可以任意交換。
二維表的主關鍵字: 超關鍵字: 能唯一確定記錄的一列或幾列的組合
候選關鍵字:最簡練的超關鍵字
主關鍵字: 候選關鍵字中的一個
外部關鍵字:當A表的主關鍵字被包含到B表中時,則稱A表的主關鍵字為B表的外部關鍵字。
4. 微機關系型資料庫系統的發展
關系型資料庫: 即根據表、記錄和欄位之間的關系進行組織和訪問的一種資料庫。
名 稱 運行環境 公司名稱 發布時間
dBASE, dBASEⅡ, dBASEⅢ,dBASEⅢ PLUS, DOS Ashton-Tate
FoxBASE 1.0 DOS Fox軟體公司 1987.2
FoxBASE + (2.00/2.10) DOS Fox軟體公司 87.7/88.7
FoxPro 1.0 DOS Fox軟體公司 1989
FoxPro 2.0 DOS Fox軟體公司 1991
FoxPro 2.5 DOS 、 WINDOWS 3.x 微軟公司 1993.1
FoxPro 2.6 DOS 、 Windows 3.x 微軟公司 1994
Visual FoxPro 3.0 Windows 3.X 微軟公司 1996.1
Visual FoxPro 5.0 Windows 95 微軟公司 1997.2
Visual FoxPro 6.0 Windows 98 微軟公司 1998.1
1.2 Visual FoxPro 6.0概述
1. VFP6.0的特點
完善了關系型資料庫的概念,採用了Rushmore技術,引入了SQL命令;支持多種數據交換格式;採用了可視化的面向對象的程序設計方式;提供了功能完善的集成環境和豐富的開發工具。
2. VFP6.0的用戶界面 [圖例]
界面基本組成:標題欄、主菜單欄、工具欄、主窗口、命令窗口、狀態欄
系統工具一覽表
各種菜單 各種工具欄 各種窗口 各種設計器 各種生成器 各種向導
文件菜單 常用工具欄 命令窗口 資料庫設計器 文本框生成器 表向導
編輯菜單 表單控制工具欄 瀏覽窗口 表設計器 組合框生成器 交叉表向導
顯示菜單 布局工具欄 代碼窗口 表單設計器 命令組生成器 查詢向導
格式菜單 調色板工具欄 調試窗口 菜單設計器 編輯框生成器 本地視圖向導
工具菜單 列印預覽工具欄 編輯窗口 報表設計器 表達式生成器 表單向導
程序菜單 報表控制工具欄 查看窗口 標簽設計器 表單生成器 一對多表單向導
窗口菜單 查詢設計器工具欄 跟蹤窗口 類設計器 表格生成器 報表向導
幫助菜單 表單設計器工具欄 屬性窗口 連接設計器 列表框生成器 一對多報表向導
菜單菜單 報表設計器工具欄 通用欄位窗口 查詢和視圖設計器 參照完整性生成器 標簽向導
數據環境菜單 資料庫設計器工具欄 遠程視圖向導
表單菜單 項目管理器窗口 數據環境設計器 自動格式生成器 郵件合並向導
項目菜單 導入向導
查詢菜單 選項組生成器 圖形向導
報表菜單 數據透視表向導
表菜單 分組/總計報表向導
資料庫菜單
類菜單
3. VFP 6.0的工作方式
(1) 菜單操作方式
根據所需的操作從菜單中選擇相應的命令(與WORD類似)。每執行一次菜單命令,命令窗口中一般都會顯示出與菜單對應的命令內容。
利用工具菜單中的向導可以很方便地完成常規任務。
(2) 命令交互方式
根據所要進行的各項操作,採用人機對話方式在命令窗口中按格式要求逐條輸入所需命令,按回車後,機器逐條執行。
(3) 程序執行方式
先在程序編輯窗口中編完程序,再從程序菜單中選擇執行,或從命令窗口中輸入DO 命令,讓機器執行。
4. VFP 6.0常用文件類型
VFP 6.0常用的文件擴展名及其關聯的文件類型
擴展名 文件類型 擴展名 文件類型
.app 生成的應用程序 .frx 報表
.exe 可執行程序 .frt 報表備注
.pjx 項目 .lbx 標簽
.pjt 項目備注 .lbt 標簽備注
.dbc 資料庫 .prg 程序
.dct 資料庫備注 .fxp 編譯後的程序
.dcx 資料庫索引 .err 編譯錯誤
.dbf 表 .mnx 菜單
.fpt 表備注 .mnt 菜單備注
.cdx 復合索引 .mpr 生成的菜單程序
.idx 單索引 .mpx 編譯後的菜單程序
.qpr 生成的查詢程序 .vcx 可視類庫
.qpx 編譯後的查詢程序 .vct 可視類庫備注
.scx 表單 .txt 文本
.sct 表單備注 .bak 備份文件
5. 創建文件
新建各種類型的文件時,可以利用系統提供的相應工具,以提高工作效率。新建文件時可用的設計器和向導。
1.3 項目管理器
1. 項目管理器簡介
項目:
是一種文件,用於跟蹤創建應用系統所需要的所有程序、表單、菜單、庫、報表、標簽、查詢和一些其他類型的文件。
項目管理器:[圖例]
是開發VFP應用系統的一個工具,它生成一個項目文件,項目文件的擴展名為 .PJX,項目備注的擴展名為:.PJT。
項目管理器窗口的組成:
由6大類數據項(全部、數據、文檔、類、代碼、其他)和10個命令按鈕(新建、添加、修改、瀏覽、關閉、打開、預覽、運行、移去、連編)組成。
註:粗斜體表示的命令按紐根據用戶選擇的不同對象相應地出現。
項目菜單的組成:13個子菜單(其中一部分與項目管理器中的命令按鈕功能相同)。
項目管理器的功能:組織和管理所有與應用系統有關的各種類型的文件。
2. 創建項目文件
用菜單方式:
打開文件菜單 → 新建 → 項目→ 新文件 → 給出合適的項目文件名及保存位置 → 進入項目管理器 → 開發應用系統 → 完成後關閉窗口退出。
用命令方式:
語法:CREATE PROJECT <項目文件名>
功能:打開項目管理器窗口進行應用系統的開發。
3. 修改項目文件
用菜單方式:
打開文件菜單 → 打開 → 找到所需的項目文件並確定之 → 進入項目管理器→ 修改應用系統 → 完成後關閉窗口退出。
用命令方式:
語法:MODIFY PROJECT <項目文件名>
功能:打開項目管理器窗口進行應用系統的修改。
4. 項目管理器的使用
可以利用項目管理器來創建、打開、瀏覽、修改所有VFP文件並運行其中的表單、報表、標簽、菜單、程序等。特別是可以利用它來連編項目(追蹤這些文件的變化情況,包括它們之間的相關性、引用和連接等,確保引用的完整,並加入自上次連編之後更新了的一些組件)、應用程序(擴展名為.APP,在VFP環境下執行)和可執行文件(擴展名為.EXE,能脫離VFP環境執行)。
1.4 VFP 6.0 的一些規則
1. VFP6.0 的命名規則:
• 只能使用字母、下劃線和數字。
• 使用字母或下劃線作為名稱的開頭。
• 名稱可以是 1 至 128 個字元,但自由表的欄位名和索引標識最多隻能有 10 個字元。
• 避免使用 Visual FoxPro 的保留字。
• 文件的命名遵循操作系統的約定。
2. 命令和子句的書寫規則
(1) 以命令動詞開始;
(2) 各部分之間要用空格隔開;
(3) 命令、子句、函數名都可簡寫為前4個字元,大、小寫等效;
(4) 一行只能寫一條命令,總長度不超過8192個字元,超過屏幕寬度時用續行符「;」;
(5) 變數名、欄位名和文件名應避免與命令動詞、關鍵字或函數名同名,以免運行時發生混亂。
(6) 命令格式中的符號約定:
命令中的[ ] 、| 、…、< > 符號都不是命令本身的語法成分,使用時不能照原樣輸入,
其中:[ ] 表示可選項,根據具體情況決定是否選用
| 表示兩邊的部分只能選用其中的一個
… 表示可以有任意個類似參數,各參數間用逗號隔開
< > 表示其中內容要以實際名稱或參數代入
3. 命令工作方式中的常見錯誤
(1) 命令動詞寫錯
(2) 格式不符合要求
• 標點符號不對(一定要用英文標點符號)
• 缺少必需的空格或添加了不該有的空格
• 數據類型不一致,要注意字元型、數值型、日期型、邏輯型數據的書寫格式
(3) 打不開所需文件:沒有正確輸入盤符和路徑或文件名輸錯