数据库系统概论课程设计报告_第1页
数据库系统概论课程设计报告_第2页
数据库系统概论课程设计报告_第3页
数据库系统概论课程设计报告_第4页
数据库系统概论课程设计报告_第5页
已阅读5页,还剩19页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、I江彖大学JIANGSU UNIVERSITY数据库系统概论课程设计报告学院:计算机科学与通信工程学院班级:软件1301班姓名:赵红娜学号:3130608003指导教师:王新胜2015年7月8一需求分析1运行环境Microsoft Visual Studio 2005Microsoft SQL Server 20052程序所实现的功能(1)对库存管理系统中的学生信息实现增删改查;(2)对库存管理系统中的教师信息实现增删改查;(3)对库存管理系统中的课程信息实现增删改查;(4)对数据库管理系统中的分组信息实现增删改查;(5)对数据库管理系统中的登记信息实现增删改查;并完成以下题目创建数据库的结构

2、创建各基本表的结构编制输入子系统,完成数据的录入检索系名为“ Math”和“ English”的课程表信息按字母顺序列出教师姓名和电话号码检索电话号码不是以“ 257”打头的教师姓名和电话号码检索数学系所有成绩大于3的课程名、系名、学分检索没有选修任何课的学生姓名、学号检索没有选修课程“ Calculus Iv ”的学生学号检索至少选修教师“ Dr. Lowe ”所开全部课程的学生学号检索每门课学生登记的人数、相应的课程名、课程号、分组号 检索选修两门以上课程的学生姓名检索只有男生选修的课程和学生名检索所有学生选修的课程名、学生名、授课教师名、该生成绩删去名为"Joe Adams”的

3、所有记录把教师“ Scango”的编号改为“ 666”统计教师“ Engle”教的英语课的学生平均分统计各门课程的选课人数统计学生来自省的省名输出如下报表:学生名课程名教师名成绩(21)输出操作结果和程序清单二设计过程1. E-R 图2.关系模型学生(学号,姓名,地址,邮政编码,市,省,性别)教师(教师编号,姓名,电话号,工资)课程(课程号,课程名,系名,学分 )分组(教师编号,课程号,学生数,组号)登记(学号,课程号,组号,评分)学习(学生号,教师号)教授(教师号,课程号)属于(老师,分组)该关系属于第一范式,因为存在部分函数依赖。3 .实验内容及其源程序SQL server 代码:CREA

4、TE TABLE STUDENTS(STUDENT CHAR(5)PRIMARY KEY ,STUDENTNAME CHAR(20),ADDRESS CHAR(50),ZIP CHAR(10),CITY CHAR(10),STATE CHAR(10),SEX CHAR(10);INSERT INTO STUDENTSVALUES('148','Suan Powell','534 East River Dr','19041','Haveford','PA','F'); INSERT I

5、NTO STUDENTSVALUES('210','Bob Dawson','120 South Jefferson','02891','Newport','RI','M'); INSERT INTO STUDENTSVALUES('298','Howard Mansfield','290 Wykoop,Drive','22180','Vienna','VA','M');

6、INSERT INTO STUDENTSVALUES('348','Susan Pugh','534 East Hampt on Dr','06107','Hartford','CN','F'); INSERT INTO STUDENTSVALUES('349','Joe Adams','473 Emmerson Street','19702','Newark','DE','M&#

7、39;); INSERT INTO STUDENTSVALUES('354','Janet Ladd','441 10th Street','18073','Pennsburg','PA','F'); INSERT INTO STUDENTSVALUES('410','Bill Jone','120 South Harrison','92660','Newport','CA','M

8、'); INSERT INTO STUDENTSVALUES('473','Carol Dean','983 Park Avenue','02169','Boston','MA','F');INSERT INTO STUDENTSVALUES('548','Allen Thomas','238 West Ox Road','60624','Chicago','IL','M&

9、#39;); INSERT INTO STUDENTSVALUES('558','Val Shipp','238 Westport Road','60556','Chicago','IL','F');INSERT INTO STUDENTSVALUES('649','John Anderson','473 Emmory Street','10008','New York','NY',

10、9;M'); INSERT INTO STUDENTSVALUES('654','Janet Yhomas','441 6th Street','16510','Erie','PA','F');CREATE TABLE TEACHERS(TEACHER CHAR(5)PRIMARY KEY ,TEACHERNAME CHAR(10),PHONE CHAR(10),SALARY CHAR(10) );INSERT INTO TEACHERSVALUES('303'

11、;,'Dr.Horn','257-3049','27540.00');INSERT INTO TEACHERSVALUES('290','Dr.Lowe','257-2390','31450.00');INSERT INTO TEACHERSVALUES('430','Dr.Engle','256-4621','38200.00');INSERT INTO TEACHERSVALUES('180',

12、9;Dr.Cooke','257-8088','29560.00');INSERT INTO TEACHERSVALUES('560','Dr.Olsen','257-8089','31778.00');INSERT INTO TEACHERSVALUES('784','Dr.Scango','257-3046','32098.00');CREATE TABLE COURSES(COURSE CHAR(5)PRIMARY KEY

13、, COURSENAME CHAR(20), DEPARTMENT CHAR(20), NURCCREDITS CHAR(5) );INSERT INTO COURSESVALUES('450','Western Civilization','History','3');INSERT INTO COURSESVALUES('730','Calculus Iv','Math','4');INSERT INTO COURSESVALUES('290',&#

14、39;English Composition','English','3');INSERT INTO COURSESVALUES('480','Compiler Writing','Computer Science','3'); CREATE TABLE SECTION (SECTION CHAR(5),TEACHER CHAR(5)PRIMARY KEY,COURSE CHAR(5), NUMSTUDENTS CHAR (5);INSERT INTO SECTIONVALUES('

15、1','303','450','2');INSERT INTO SECTIONVALUES('1','290','730','6');INSERT INTO SECTIONVALUES('1','430','290','3');INSERT INTO SECTIONVALUES('1','180','480','3');INSERT INTO SEC

16、TIONVALUES('2','560','450','2');INSERT INTO SECTIONVALUES('2','784','480','2');CREATE TABLE ENROLLS(COURSE CHAR(5),SECTION CHAR(5),STUDENT CHAR(5),GRADE CHAR(5)PRIMARY KEY(COURSE,STUDENT) );INSERT INTO ENROLLS VALUES('730','

17、1','148','3'); INSERT INTO ENROLLS VALUES('450','2','210','3');INSERT INTO ENROLLS VALUES('730','1','210','1'); INSERT INTO ENROLLSVALUES('290','1','298','3'); INSERT INTO ENROLLSVALUE

18、S('480','2','298','3');INSERT INTO ENROLLS VALUES('730','1','348','2'); INSERT INTO ENROLLSVALUES('290','1','349','4'); INSERT INTO ENROLLSVALUES('480','1','358','4'); INSE

19、RT INTO ENROLLSVALUES('480','1','410','2'); INSERT INTO ENROLLSVALUES('450','1','473','2');INSERT INTO ENROLLS VALUES('730','1','473','3'); INSERT INTO ENROLLSVALUES('480','2','473'

20、;,'0'); INSERT INTO ENROLLSVALUES('290','1','548','2'); INSERT INTO ENROLLSVALUES('730','1','558','3'); INSERT INTO ENROLLS VALUES('730','1','649','4'); INSERT INTO ENROLLSVALUES('480',

21、9;1','649','4'); INSERT INTO ENROLLSVALUES('450','1','654','4'); INSERT INTO ENROLLSVALUES('450','2','548','1');C+代码:/ ks.cpp : 定义控制台应用程序的入口点。/#include "stdafx.h"int _tmain(int argc, _TCHAR* argv) return 0;

22、#include <stdlib.h>#include <stdio.h>#include <windows.h>/ This is the the main include for ODBC Core functions.#include <sql.h>#include <sqlext.h> Extensions#include <sqltypes.h>#include <sqlucode.h>#include <odbcinst.h> defines./ This is the include

23、for applications using the Microsoft SQL/ This file defines the types used in ODBC/ This is the unicode include for ODBC Core functions/ This is the application include file for the SQL Server driver specific #include <iostream>#include <string>#include <tchar.h> using namespace st

24、d;# define STUDENT_LEN 5# define STUDENTNAME_LEN 20# define ADDRESS_LEN 50# define ZIP_LEN 40# define CITY_LEN 10# define STATE_LEN 10# define SEX_LEN 10# define TEACHER_LEN 5# define TEACHERNAME_LEN 10# define PHONE_LEN 10# define SALARY_LEN 10# define COURSE_LEN 5# define COURSENAME_LEN 20# define

25、 DEPARTMENT_LEN 20# define NURCCREDITS_LEN 5# define SECTION_LEN 5# define NUMSTUDENTS_LEN 5# define GRADE_LEN 5void back()int main()/*Step 1 定义句柄括和变量*/SQLHENVdinghenv;/环境句柄括SQLHDBC dinghdbc;/连接句柄括SQLHSTMTdinghstmt;/语句句柄括SQLRETURN ret; SQLCHARSTUDENTSTUDENT_LEN,STUDENTNAMESTUDENTNAME_LEN,ADDRESSADDR

26、 ESS_LEN,ZIPZIP_LEN,CITYCITY_LEN,STATESTATE_LEN,SEXSEX_LEN,TEACHERTEACHER_LEN,TEACHERNAMETE ACHERNAME_LEN,PHONEPHONE_LEN,SALARYSALARY_LEN,COURSECOURSE_LEN,COURSENAMECOURSENAME_LEN,DEPARTMENTDEPARTMENT_LEN,NURCCREDITSNURCCREDITS_LEN,SECTIONSECTION_LEN,NUMSTUDENTS NUMSTUDENTS_LEN,GRADEGRADE_LEN;SQLINT

27、EGERcbSTUDENT=SQL_NTS,cbSTUDENTNAME=SQL_NTS,cbADDRESS=SQL_NTS,cbZIP=S QL_NTS,cbCITY=SQL_NTS,cbSTATE=SQL_NTS,cbSEX=SQL_NTS,cbTEACHER=SQL_NTS,cbTEACHERNAME=SQL _NTS,cbPHONE=SQL_NTS,cbSALARY=SQL_NTS,cbCOURSE=SQL_NTS,cbCOURSENAME=SQL_NTS,cbDEPARTM ENT=SQL_NTS,cbNURCCREDITS=SQL_NTS,cbSECTION=SQL_NTS,cbNU

28、MSTUDENTS=SQL_NTS,cbG RADE=SQL_NTS;int w,x,y,m,n;/*Step 2 初始化环境3*/loop: ret=SQLAllocHandle(SQL_HANDLE_ENV ,SQL_NULL_HANDLE,&dinghenv);ret=SQLSetEnvAttr(dinghenv,SQL_ATTR_ODBC_VERSION,(void*)SQL_OV_ODBC3,0);/*Step 3 建立连接*/ret=SQLAllocHandle(SQL_HANDLE_DBC,dinghenv,&dinghdbc);ret=SQLConnect(di

29、nghdbc,(SQLWCHAR*)(_T("SQLserver"),SQL_NTS,(SQLWCHAR*)(_T("sa"),SQL_NTS,(SQLWCHAR*)(_T("123"),SQL_NTS);if(!SQL_SUCCEEDED(ret)return -1;/*Step 4 初始化语句句柄括*/ret=SQLAllocHandle(SQL_HANDLE_STMT,dinghdbc,&dinghstmt);ret=SQLSetStmtAttr(dinghstmt,SQL_ATTR_ROW_BIND_TYPE,(SQL

30、POINTER)SQL _BIND_BY_COLUMN,SQL_IS_INTEGER);/*Step 5 执行语句*/cout<<"+ 教 务 管 理 的 应 用 系 统 +"<<endl;cout<<" 输入需要操作的学号:"<<endl;cout<<"1 、学生管理"<<endl;cout<<"2 、教师管理"<<endl;cout<<"3 、信息查询"<<endl;cou

31、t<<"4 、退出 "<<endl;cin>>w;switch(w)case 1:w=1;loop1:cout<<"+ 学 生 管 理+"<<endl;cout<<"1 、录入学生信息"<<endl;cout<<"2 、修改学生信息"<<endl;cout<<"3 、删除学生信息"<<endl;cout<<"4 、返回上级"<&

32、lt;endl;cin>>x;switch(x) case 1:x=1;SQLWCHARSTUDENT1STUDENT_LEN,STUDENTNAME1STUDENTNAME_LEN,ADDRESS1A DDRESS_LEN,ZIP1ZIP_LEN,CITY1CITY_LEN,STA TE1STATE_LEN,SEX1SEX_LEN;ret=SQLPrepare(dinghstmt,(SQLWCHAR*)(_T("INSERTINTOSTUDENTS(STUDENT,STUDENTNAME,ADDRESS,ZIP,CITY ,STATE,SEX) VALUES(?,?,?

33、,?,?,?,?)"), SQL_NTS);cout<<" 录 入 学 生 信 息( STUDENT,STUDENTNAME,ADDRESS,ZIP,CITY,STATE,SEX ) ?"<<endl;scanf("%s",STUDENT1);scanf("%s",STUDENTNAME1);scanf("%s",ADDRESS1);scanf("%s",ZIP1);scanf("%s",CITY1);scanf("%s"

34、,STATE1);scanf("%s",SEX1);if(ret=SQL_SUCCESS|ret=SQL_SUCCESS_WITH_INFO) cbSTUDENT=SQL_NTS;cbSTUDENTNAME=SQL_NTS;cbADDRESS=SQL_NTS;cbZIP =SQL_NTS;cbCITY=SQL_NTS;cbSTATE=SQL_NTS;cbSEX=SQL_NTS;ret=SQLBindParameter(dinghstmt,1,SQL_PARAM_INPUT,SQL_C_CHAR,SQL_CHAR,ST UDENT_LEN,0,STUDENT1,0,&

35、cbSTUDENT);ret=SQLBindParameter(dinghstmt,2,SQL_PARAM_INPUT,SQL_C_CHAR,SQL_CHAR,ST UDENTNAME_LEN,0,STUDENTNAME1,0,&cbSTUDENTNAME);ret=SQLBindParameter(dinghstmt,3,SQL_PARAM_INPUT,SQL_C_CHAR,SQL_CHAR,A DDRESS_LEN,0,ADDRESS1,0,&cbADDRESS);ret=SQLBindParameter(dinghstmt,4,SQL_PARAM_INPUT,SQL_C_

36、CHAR,SQL_CHAR,ZI P_LEN,0,ZIP1,0,&cbZIP);ret=SQLBindParameter(dinghstmt,5,SQL_PARAM_INPUT,SQL_C_CHAR,SQL_CHAR,CI TY_LEN,0,CITY1,0,&cbCITY);ret=SQLBindParameter(dinghstmt,6,SQL_PARAM_INPUT,SQL_C_CHAR,SQL_CHAR,ST ATE_LEN,0,STATE1,0,&cbSTA TE);ret=SQLBindParameter(dinghstmt,7,SQL_PARAM_INPUT

37、,SQL_C_CHAR,SQL_CHAR,SE X_LEN,0,SEX1,0,&cbSEX);ret=SQLExecute(dinghstmt);goto loop1;case 2:x=2;SQLWCHARSTUDENT2STUDENT_LEN,STUDENTNAME2STUDENTNAME_LEN,ADDRESS2ADDRESS_LEN,ZIP2ZIP_LEN,CITY2CITY_LEN,STA TE2STATE_LEN,SEX2SEX_LEN;ret=SQLPrepare(dinghstmt,(SQLWCHAR*)(_T("UPDA TESTUDENTS SET STUD

38、ENTNAME=?,ADDRESS=?,ZIP=?,CITY=?,STA TE=?,SEX=?WHERE STUDENT=?"), SQL_NTS); /* 输入数据*/cout<<" 输 入 学 生 信 息( STUDENTNAME,ADDRESS,ZIP,CITY,STATE,SEX ) ?"<<endl;scanf("%s",STUDENTNAME2);scanf("%s",ADDRESS2);scanf("%s",ZIP2);scanf("%s",CIT

39、Y2);scanf("%s",STATE2);scanf("%s",SEX2);if(ret=SQL_SUCCESS|ret=SQL_SUCCESS_WITH_INFO)cbSTUDENT=SQL_NTS;cbSTUDENTNAME=SQL_NTS;cbADDRESS=SQL_NTS;cbZIP =SQL_NTS;cbCITY=SQL_NTS;cbSTATE=SQL_NTS;cbSEX=SQL_NTS;ret=SQLBindParameter(dinghstmt,1,SQL_PARAM_INPUT,SQL_C_CHAR,SQL_CHAR,ST UDENT

40、NAME_LEN,0,STUDENTNAME2,0,&cbSTUDENTNAME);ret=SQLBindParameter(dinghstmt,2,SQL_PARAM_INPUT,SQL_C_CHAR,SQL_CHAR,ADDRESS_LEN,0,ADDRESS2,0,&cbADDRESS);ret=SQLBindParameter(dinghstmt,3,SQL_PARAM_INPUT,SQL_C_CHAR,SQL_CHAR,ZI P_LEN,0,ZIP2,0,&cbZIP);ret=SQLBindParameter(dinghstmt,4,SQL_PARAM_IN

41、PUT,SQL_C_CHAR,SQL_CHAR,CI TY_LEN,0,CITY2,0,&cbCITY);ret=SQLBindParameter(dinghstmt,5,SQL_PARAM_INPUT,SQL_C_CHAR,SQL_CHAR,ST ATE_LEN,0,STATE2,0,&cbSTA TE);ret=SQLBindParameter(dinghstmt,6,SQL_PARAM_INPUT,SQL_C_CHAR,SQL_CHAR,SE X_LEN,0,SEX2,0,&cbSEX);ret=SQLBindParameter(dinghstmt,7,SQL_P

42、ARAM_INPUT,SQL_C_CHAR,SQL_CHAR,ST UDENT_LEN,0,STUDENT2,0,&cbSTUDENT);ret=SQLExecute(dinghstmt);goto loop1;case 3:x=3;SQLCHAR STUDENT3STUDENT_LEN;ret=SQLPrepare(dinghstmt,(SQLWCHAR*)(_T("DELETE FROM STUDENTS WHERE STUDENT=?"), SQL_NTS);cout<<" 输入要删除的学生学号"<<endl;cin

43、>>STUDENT3;if(ret=SQL_SUCCESS|ret=SQL_SUCCESS_WITH_INFO) cbSTUDENT=SQL_NTS;ret=SQLBindParameter(dinghstmt,1,SQL_PARAM_INPUT,SQL_C_CHAR,SQL_CHAR,STU DENT_LEN,0,STUDENT3,0,&cbSTUDENT);ret=SQLExecute(dinghstmt);goto loop1;case 4:x=4;goto loop;case 2:w=2;loop2 :cout<<"+ 教 师 管 理 +&qu

44、ot;<<endl;cout<<"1 、录入教师信息"<<endl;cout<<"2 、修改教师信息"<<endl;cout<<"3 、删除教师信息"<<endl;cout<<"4 、返回上级"<<endl;cin>>y;switch(y) case 1:y=1;SQLWCHARTEACHER1TEACHER_LEN,TEACHERNAME1TEACHERNAME_LEN,PHONE1PHO NE

45、_LEN,SALARY1SALARY_LEN;ret=SQLPrepare(dinghstmt,(SQLWCHAR*)(_T("INSERTINTOTEACHERS(TEACHER,TEACHERNAME,PHONE,SALARY)VALUES(?,?,?,?)"),SQL_NTS); cout<<" 录 入 教 师 信 息( TEACHER,TEACHERNAME,PHONE,SALARY ) ?"<<endl;scanf("%s",TEACHER1);scanf("%s",TEACHER

46、NAME1);scanf("%s",PHONE1);scanf("%s",SALARY1);if(ret=SQL_SUCCESS|ret=SQL_SUCCESS_WITH_INFO) cbTEACHER=SQL_NTS;cbTEACHERNAME=SQL_NTS;cbPHONE=SQL_NTS;cbSALA RY=0;ret=SQLBindParameter(dinghstmt,1,SQL_PARAM_INPUT,SQL_C_CHAR,SQL_CHAR,TE ACHER_LEN,0,TEACHER1,0,&cbTEACHER);ret=SQLBi

47、ndParameter(dinghstmt,2,SQL_PARAM_INPUT,SQL_C_CHAR,SQL_CHAR,TE ACHERNAME_LEN,0,TEACHERNAME1,0,&cbTEACHERNAME);ret=SQLBindParameter(dinghstmt,3,SQL_PARAM_INPUT,SQL_C_CHAR,SQL_CHAR,P HONE_LEN,0,PHONE1,0,&cbPHONE);ret=SQLBindParameter(dinghstmt,4,SQL_PARAM_INPUT,SQL_C_CHAR,SQL_CHAR,S ALARY_LEN,

48、0,SALARY1,0,&cbSALARY);goto loop2;case 2:y=2;SQLCHARTEACHER2TEACHER_LEN,TEACHERNAME2TEACHERNAME_LEN,PHONE2PHO NE_LEN,SALARY2SALARY_LEN;ret=SQLPrepare(dinghstmt,(SQLWCHAR*)(_T("UPDA TE TEACHERS SET TEACHERNAME=?,PHONE=?,SALARY=? WHERE TEACHER=?"), SQL_NTS);cout<<" 输 入 修 改 数 据

49、 ( TEACHERNAME,PHONE,SALARY ) ?"<<endl;cin>>TEACHERNAME2;cin>>PHONE2;cin>>SALARY2;if(ret=SQL_SUCCESS|ret=SQL_SUCCESS_WITH_INFO) cbTEACHERNAME=SQL_NTS;cbPHONE=SQL_NTS;cbSALARY=SQL_NTS;ret=SQLBindParameter(dinghstmt,1,SQL_PARAM_INPUT,SQL_C_CHAR,SQL_CHAR,TE ACHERNAME_LEN,0,

50、TEACHERNAME2,0,&cbTEACHERNAME);ret=SQLBindParameter(dinghstmt,2,SQL_PARAM_INPUT,SQL_C_CHAR,SQL_CHAR,P HONE_LEN,0,PHONE2,0,&cbPHONE);ret=SQLBindParameter(dinghstmt,3,SQL_PARAM_INPUT,SQL_C_CHAR,SQL_CHAR,S ALARY_LEN,0,SALARY2,0,&cbSALARY); ret=SQLExecute(dinghstmt);goto loop2;case 3:y=3;SQL

51、CHAR TEACHER3TEACHER_LEN;ret=SQLPrepare(dinghstmt,(SQLWCHAR*)(_T("DELETEFROM TEACHERS WHERE TEACHER=?"), SQL_NTS);cout<<" 输入要删除教师编号?"<<endl;cin>>TEACHER3;if(ret=SQL_SUCCESS|ret=SQL_SUCCESS_WITH_INFO) cbTEACHER=SQL_NTS;ret=SQLBindParameter(dinghstmt,1,SQL_PARAM_I

52、NPUT,SQL_C_CHAR,SQL_CHAR,TEA CHER_LEN,0,TEACHER3,0,&cbTEACHER);ret=SQLExecute(dinghstmt);goto loop2;case 4:y=4; goto loop;case 3:w=3;loop3:cout<<"+ 信 息 查 询+"<<endl;cout<<"1.检索系名为 Math和English的课程表信息"<<endl;cout<<"2.按字母顺序列出教师姓名和电话号码"<&

53、lt;endl;cout<<"3.检索电话号码不是以 257打头的教师姓名和电话号码 "<<endl;cout<<"4.检索数学系所有成绩大于3的课程名,系名,学分"<<endl;cout<<"5.检索没有选修任何课的学生姓名,学号"<<endl;cout<<"6.检索没有选修课程 Calculus Iv的学生学号"<<endl;cout<<"7.检索每门课程学生等级的人数,相应的课程名,课程号,分

54、组号"<<endl;cout<<"8.检索选修两门以上课程的学生姓名"<<endl;cout<<"9.检索只有男生选修白课程和学生名"<<endl;cout<<"10.检索所有学生选彳的课程名,学生名,授课教师名,该生成绩"<<endl;cout<<"11.把教师 “ Scango” 的编号改为 “ 666" "<<endl;cout<<"12.统计教师“Engle”

55、教的英语课的学生平均分"<<endl;cout<<"13.统计各门课程的选课人数 "<<endl;cout<<"14.统计学生来自省的省名 "<<endl;cout<<"15.返回上级"<<endl;cin>>m;switch(m)case 1:m=1;SQLCHARCOURSECOURSE_LEN,COURSENAMECOURSENAME_LEN,DEPARTMENTDEPAR TMENT_LEN,NURCCREDITSNURC

56、CREDITS_LEN;ret=SQLPrepare(dinghstmt,(SQLWCHAR*)(_T("SELECT * FROM COURSES WHERE DEPARTMENT IN('Math','English');"), SQL_NTS);if(ret=SQL_SUCCESS|ret=SQL_SUCCESS_WITH_INFO)cbCOURSE=SQL_NTS;cbCOURSENAME=SQL_NTS;cbDEPARTMENT=SQL_NTS;cbNU RCCREDITS=SQL_NTS;ret=SQLBindCol(dinghs

57、tmt,1,SQL_C_CHAR,COURSE,COURSE_LEN,&cbCOURSE);ret=SQLBindCol(dinghstmt,2,SQL_C_CHAR,COURSENAME,COURSENAME_LEN,&cbC OURSENAME);ret=SQLBindCol(dinghstmt,3,SQL_C_CHAR,DEPARTMENT,DEPARTMENT_LEN,&cbDEP ARTMENT);ret=SQLBindCol(dinghstmt,4,SQL_C_CHAR,NURCCREDITS,NURCCREDITS_LEN,&cbN URCCRED

58、ITS);ret=SQLExecute(dinghstmt);while(SQLFetch(dinghstmt) != SQL_NO_DATA_FOUND) cout<<COURSE<<" "<<COURSENAME<<""<<DEPARTMENT<<" "<<NURCCREDITS<<endl;system("pause");goto loop;case 2:m=2;SQLCHARTEACHERNAMETEACHERN

59、AME_LEN,PHONEPHONE_LEN;ret=SQLPrepare(dinghstmt,(SQLWCHAR*)(_T("SELECTTEACHERNAME,PHONE FROM TEACHERS ORDER BY TEACHERNAME ASC;"), SQL_NTS);if(ret=SQL_SUCCESS|ret=SQL_SUCCESS_WITH_INFO) cbTEACHERNAME=SQL_NTS;cbPHONE=SQL_NTS;ret=SQLBindCol(dinghstmt,1,SQL_C_CHAR,TEACHERNAME,TEACHERNAME_LEN,

60、&c bTEACHERNAME);ret=SQLBindCol(dinghstmt,2,SQL_C_CHAR,PHONE,PHONE_LEN,&cbPHONE);ret=SQLExecute(dinghstmt);while(SQLFetch(dinghstmt) != SQL_NO_DATA_FOUND) cout<<TEACHERNAME<<" "<<PHONE<<endl;system("pause");goto loop; case 3:m=3; SQLCHARTEACHERNAME

61、TEACHERNAME_LEN,PHONEPHONE_LEN;ret=SQLPrepare(dinghstmt,(SQLWCHAR*)(_T("SELECTTEACHERNAME,PHONE FROM TEACHERS WHERE PHONE NOT LIKE'257%'"), SQL_NTS);if(ret=SQL_SUCCESS|ret=SQL_SUCCESS_WITH_INFO) cbTEACHERNAME=SQL_NTS;cbPHONE=SQL_NTS;ret=SQLBindCol(dinghstmt,1,SQL_C_CHAR,TEACHERNAME

62、,TEACHERNAME_LEN,&c bTEACHERNAME);ret=SQLBindCol(dinghstmt,2,SQL_C_CHAR,PHONE,PHONE_LEN,&cbPHONE);ret=SQLExecute(dinghstmt);while(SQLFetch(dinghstmt) != SQL_NO_DATA_FOUND) cout<<TEACHERNAME<<" "<<PHONE<<endl;system("pause");goto loop;case 4:m=4;SQL

63、CHARCOURSENAMECOURSENAME_LEN,DEPARTMENTSTUDENT_LEN,NURCCREDIT SNURCCREDITS_LEN;ret=SQLPrepare(dinghstmt,(SQLWCHAR*)(_T("SELECTCOURSENAME,DEPARTMENT,NURCCREDITSFROM COURSES WHEREDEPARTMENT='MATH' AND NURCCREDITS>3;"), SQL_NTS);if(ret=SQL_SUCCESS|ret=SQL_SUCCESS_WITH_INFO) cbCOURS

64、ENAME=SQL_NTS;cbDEPARTMENT=SQL_NTS;cbNURCCREDITS=SQL_NTS ;ret=SQLBindCol(dinghstmt,1,SQL_C_CHAR,COURSENAME,COURSENAME_LEN,&cbC OURSENAME);ret=SQLBindCol(dinghstmt,2,SQL_C_CHAR,DEPARTMENT,DEPARTMENT_LEN,&cbDEP ARTMENT);ret=SQLBindCol(dinghstmt,3,SQL_C_CHAR,NURCCREDITS,NURCCREDITS_LEN,&cbN

65、 URCCREDITS);ret=SQLExecute(dinghstmt);while(SQLFetch(dinghstmt) != SQL_NO_DATA_FOUND) cout<<COURSENAME<<" "<<DEPARTMENT<<" "<<NURCCREDITS<<endl; system("pause"); goto loop;case 5:m=5;SQLCHARSTUDENTNAMESTUDENTNAME_LEN,STUDENTSTUDENT_L

66、EN;ret=SQLPrepare(dinghstmt,(SQLWCHAR*)(_T("SELECT STUDENTNAME,STUDENT FROM STUDENTS WHERE STUDENT NOT IN(SELECT STUDENT FROM ENROLLS);"), SQL_NTS);if(ret=SQL_SUCCESS|ret=SQL_SUCCESS_WITH_INFO) cbSTUDENTNAME=SQL_NTS;cbSTUDENT=SQL_NTS;ret=SQLBindCol(dinghstmt,1,SQL_C_CHAR,STUDENTNAME,STUDENTNAME_LEN,&c

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论