南邮数据库实验报告

合集下载

南邮数据库基础教程实验报告

南邮数据库基础教程实验报告

实验报告〔201 5 / 201 6 学年第二学期〕课程名称数据库系统与设计实验名称数据库系统程序设计与分析实验时间201 6年6月3/17/22/24 日指导单位指导教师学生班级学号学院(系) 电脑学院专业实验报告实验报告insert into PC values(1010,,2048,300,770);insert into PC values(1011,,2048,160,959);insert into PC values(1012,,1024,160,649);insert into PC values(1013,,512,80,529);insert into Laptop values(2001,,2048,240,,3673);insert into Laptop values(2002,,1024,80,,949);insert into Laptop values(2003,,512,60,,549);insert into Laptop values(2004,,512,60,,1150);insert into Laptop values(2005,,1024,120,,2500);insert into Laptop values(2006,,2048,80,,1700);insert into Laptop values(2007,,1024,120,,1429);insert into Laptop values(2008,,1024,100,,900);insert into Laptop values(2009,,512,80,,680);insert into Laptop values(2010,,2048,160,,2300);insert into Printer values(3001,'true','ink_jet',99); insert into Printer values(3002,'false','laster',239); insert into Printer values(3003,'true','laster',899); insert into Printer values(3004,'true','ink_jet',120); insert into Printer values(3005,'false','laster',120);insert into Printer values(3006,'true','ink_jet',100); insert into Printer values(3007,'true','laster',200);insert into Product values('A',1001,'pc');insert into Product values('A',1002,'pc');insert into Product values('A',1003,'pc');insert into Product values('A',2004,'laptop');insert into Product values('A',2005,'laptop');insert into Product values('A',2006,'laptop');insert into Product values('B',1004,'pc');insert into Product values('B',1005,'pc');insert into Product values('B',1006,'pc');insert into Product values('B',2007,'laptop');insert into Product values('C',1007,'pc');insert into Product values('D',1008,'pc');insert into Product values('D',1009,'pc');insert into Product values('D',1010,'pc')insert into Product values('D',3004,'printer');insert into Product values('D',3005,'printer');insert into Product values('E',1011,'pc');insert into Product values('E',1012,'pc');insert into Product values('E',1013,'pc');insert into Product values('E',2001,'laptop');insert into Product values('E',2002,'laptop');insert into Product values('E',2003,'laptop');insert into Product values('E',3001,'printer');insert into Product values('E',3002,'printer');insert into Product values('E',3003,'printer');insert into Product values('F',2008,'laptop');insert into Product values('F',2009,'laptop');insert into Product values('G',2010,'laptop')insert into Product values('H',3006,'printer');insert into Product values('H',3007,'printer');实验二A〕SELECT maker,speedFrom Product,Laptopwhere Laptop.hd>=30 AND Laptop.model=Product.modelB〕SELECT Product.model,priceFrom Product,PCWhere Product.maker='B'AND Product.model=PC.model UNIONSELECT Product.model,priceFrom Product,LaptopWhere Product.maker='B'AND Product.model=Laptop.model UNIONSELECT Product.model,priceFROM Product,PrinterWHERE Product.maker='B'AND Product.model=Printer.modelC〕SELECT makerFrom Product PWhere P.type='laptop'EXCEPTSELECT makerFrom Product PWhere P.type='pc'D〕SELECT DISTINCT p.hdFROM PC p,PC qWHERE q.hd=p.hd AND p.model>q.modelE〕SELECT p.model AS MODEL1,q.model AS MODEL2FROM PC p,PC qWHERE p.speed=q.speed AND p.ram=q.ram AND p.model>q.modelF〕SELECT p.makerFROM (SELECT E.maker,F.modelFROM Product E,PC FWHERE F.speed> 3.0 AND E.model=F.modelUNIONSELECT G.maker,H.modelFROM Product G,Laptop HWHERE H.speed> 3.0 AND G.model=H.model)pGROUP BY p.makerHAVING COUNT(p.model)>= 2实验三A〕SELECT makerFROM Product,(SELECT modelFROM PCWHERE PC.speed>)pWHERE Product.model=p.modelSELECT makerFROM Product JOIN PCON Product.model=PC.modelWHERE speed>B〕SELECT p.priceFROM Printer pWHERE p.price>=ALL(SELECT priceFROM Printer)SELECT MAX(price)AS price FROM PrinterC〕SELECT p.modelFROM Laptop pWHERE p.speed<=(SELECT MIN(speed)FROM PC)SELECT p.modelFROM Laptop pWHERE p.speed<=ALL(SELECT speedFROM PC)D〕SELECT p.modelFROM (SELECT model,priceFROM PCUNIONSELECT model,priceFROM LaptopUNIONSELECT model,priceFROM Printer)pWHERE p.price>=ALL(SELECT priceFROM PCUNIONSELECT priceFROM LaptopUNIONSELECT priceFROM Printer)E〕SELECT makerFROM ProductWHERE model=(SELECT modelFROM PrinterWHERE price=(SELECT MIN(price)AS priceFROM Printer))SELECT p.makerFROM Product p,Printer qWHERE p.model=q.model AND q.price<=ALL(SELECT priceFROM Printer)F〕SELECT makerFROM Product p,PC qWHERE p.model=q.modelAND q.ram<=ALL(SELECT ramFROM PC)AND q.speed>=ALL(SELECT speedFROM PC)实验四A〕SELECT AVG(speed)AS AVGSPEEDFROM PCB〕SELECT AVG(speed)AS AVGSPEEDFROM PCWHERE price> 1000C〕SELECT AVG(price)AS AVGPRICEFROM PCWHERE model IN(SELECT modelFROM ProductWHERE maker='A')D〕SELECT AVG(p.price)AS AVGPRICEFROM (SELECT model,priceFROM PCUNIONSELECT model,priceFROM Laptop)pWHERE p.model IN(SELECT modelFROM ProductWHERE maker='D')E〕SELECT speed,AVG(price)AS AVGPRICEFROM PCGROUP BY speedF〕SELECT maker,AVG(screen)AS AVGSCREENFROM Product p JOIN Laptop q ON p.model=q.model GROUP BY makerG〕SELECT makerFROM ProductWHERE type='PC'GROUP BY makerHAVING COUNT(model)>= 3H〕SELECT maker,MAX(price)AS MAXPRICEFROM Product p JOIN PC q ON p.model=q.model GROUP BY makerI〕SELECT speed,AVG(price)AS AVGPRICEFROM PCWhere speed>GROUP BY speedJ〕SELECT AVG(hd)AS AVGHDFROM Product p JOIN PC q ON p.model=q.model WHERE maker IN(SELECT makerFROM ProductWhere type='Printer')实验报告。

南邮数据结构实验二

南邮数据结构实验二

实验报告
( 2016 / 2017 学年第一学期)
课程名称数据结构A
实验名称二叉树的基本操作
及哈夫曼编码译码系统的实现
实验时间2017 年 5 月 1 日指导单位计算机学院计算机科学与技术系
指导教师邹志强
学生姓名吴爱天班级学号B15040916 学院(系) 计算机学院专业信息安全
实验报告
之后三步输出,对应的是三种遍历方式,应该输出的测试结果是:
先序:68 69 72 70 74 71 67 75 65 66
中序:72 69 74 70 71 75 67 68 65 66
后序:72 74 75 67 71 70 69 66 65 68
实验结果符合预期。

对于哈夫曼建树操作我自己又按照自己的想法重写了,里面也去学习了C++的字典类MAP,这个类非常好用,可以简单粗暴地提供一些方法和迭代器,让你将关键字和值绑定,这样我每新加入一个字母的数据块,我就可以记录下这对组合,不用之后搜索和解码的时
之后进行编码,其实也是一个搜索的过程,主要是调用了一个
测试:。

南邮数据结构实验一

南邮数据结构实验一

实验报告(2014 / 2015 学年第二学期)课程名称数据结构实验名称线性表的基本运算及多项式的算术运算实验时间2015 年9 月28 日指导单位计算机科学与技术系指导教师黄海平学生姓名陈明阳班级学号Q学院(系) 贝尔英才专业信息科技强化班实验报告~SeqList() { delete[] elements; }bool IsEmpty() const;int Length() const;bool Find(int i, T& x) const;int Search(T x) const;bool Insert(int i, T x);bool Delete(int i);bool Update(int i, T x);void Output(ostream& out)const;private:int maxLength;T *elements;};template<class T>SeqList<T>::SeqList(int mSize){maxLength = mSize;elements = new T[maxLength];n = 0;}template<class T>bool SeqList<T>::IsEmpty() const{return n == 0;}template<class T>int SeqList<T>::Length()const{return n;}template<class T>bool SeqList<T>::Find(int i, T& x)const{if (i<0 || i>n - 1){cout <<"out of bounds"<< endl; return false;}x = elements[i];return true;}template<class T>int SeqList<T>::Search(T x)const{for (int j = 0; j < n; j++)if (elements[j] == x)return j;return -1;}template<class T>bool SeqList<T>::Insert(int i, T x){if (i<-1 || i>n - 1){cout <<"out of bounds"<< endl;return false;}if (n == maxLength){cout <<"over flow"<< endl;return false;}for (int j = n - 1; j > i; j--)elements[j + 1] = elements[j];elements[i + 1] = x;n++;return true;}template<class T>bool SeqList<T>::Delete(int i){if (i<0 || i>n - 1){cout <<"out of bounds"<< endl;return false;}if (!n){cout <<"over flow"<< endl;return false;}for (int j = i+1; j <n; j--)elements[j -1] = elements[j];n--;return true;}template<class T>bool SeqList<T>::Update(int i, T x){if (i<0 || i>n - 1){cout <<"out of bounds"<< endl;return false;}elements[i] = x;return true;}template<class T>void SeqList<T>::Output(ostream& out)const{for (int i = 0; i < n; i++)out << elements[i] << " ";out<< endl;}源.cpp:#include"seqlist.h"const int SIZE = 20;void main(){SeqList<int> LA(SIZE);int i = 0;for (i = 0; i<5; i++) LA.Insert(i - 1, i);LA.Insert(-1, 10);LA.Output(cout);}实现在线性表LA中插入0-4然后在一开始插入10 运行截图如下:多项式实验:定义类如下重构函数如下:源码:#include<iostream>using namespace std;class Term{public:Term(int c, int e);Term(int c, int e, Term* nxt);Term* InsertAfter(int c, int e);private:int coef;int exp;Term* link;friend ostream& operator<<(ostream &, const Term &);friend class Polynominal;};Term::Term(int c, int e) :coef(c), exp(e){link = 0;}Term::Term(int c, int e, Term *nxt) : coef(c), exp(e) {link = nxt;}Term* Term::InsertAfter(int c, int e){link = new Term(c, e, link);return link;}ostream& operator<<(ostream& out, const Term& val){if (0 == val.coef)return out;if (1!= val.coef)out<<val.coef;switch (val.exp){case 0:break;case 1:out<<"X"; break;default:out<<"X^"<<val.exp; break;}return out;}class Polynominal{public:Polynominal();~Polynominal();void AddTerms(istream& in);void Output(ostream& out)const;void PolyAdd(Polynominal& r);void PolyMul(Polynominal& r);private:Term* theList;friend ostream& operator<<(ostream &, const Polynominal &);friend istream& operator>>(istream&, Polynominal &);friend Polynominal& operator+(Polynominal &, Polynominal &);friend Polynominal& operator*(Polynominal &, Polynominal &); };Polynominal::Polynominal(){theList = new Term(0, -1); //头结点theList->link = NULL; //单链表尾结点指针域为空}Polynominal::~Polynominal(){Term* p = theList->link;while (p != NULL){theList->link = p->link;delete p;p = theList->link;}delete theList;}void Polynominal::AddTerms(istream & in){Term* q = theList;int c, e;for (;;){cout <<"Input a term(coef,exp):\n"<< endl;cin >> c >> e;q = q->InsertAfter(c, e);if (0 >= e) break;}}void Polynominal::Output(ostream& out)const{int first = 1;Term *p = theList->link;for (; p != NULL && p->exp >= 0; p = p->link){if (!first && (p->coef>0)) out<<"+";first = 0;out<< *p;}cout << endl;}void Polynominal::PolyAdd(Polynominal& r){Term *q, *q1 = theList, *p; //q1指向表头结点p = r.theList->link; //p指向第一个要处理的结点q = q1->link; //q1是q的前驱,p和q就指向两个当前进行比较的项while (p != NULL && p->exp >= 0)//对r的单循环链表遍历,知道全部结点都处理完{while (p->exp < q->exp) //跳过q->exp大的项{q1 = q;q = q->link;}if (p->exp == q->exp) //当指数相等时,系数相加{q->coef = q->coef + p->coef;if (q->coef == 0) //若相加后系数为0,则删除q{q1->link = q->link;delete(q);q = q1->link; //重置q指针}else{q1 = q; //若相加后系数不为0,则移动q1和qq = q->link;}}else//p>exp>q->exp的情况q1 = q1->InsertAfter(p->coef, p->exp); //以p的系数和指数生成新结点,插入q1后 p = p->link;}}void Polynominal::PolyMul(Polynominal& r){Polynominal result; //定义相乘后的数据Term *n = result.theList; //n指向result的头结点n = n->InsertAfter(0, 0); //在result的头结点后插入新结点,系数指数均为0 Term *p = r.theList->link; //p指向第一个要处理的结点while(p->exp >= 0) //对r的单循环链表遍历{Polynominal tmp; //存储某段相乘后的数据Term *m = tmp.theList; //m指向tmp的头结点Term *q = theList->link; //q指向表头结点的后继结点while(q->exp >= 0) //对当前对象的单循环环链表遍历{m = m->InsertAfter((p->coef)*(q->coef), (p->exp) + (q->exp)); //生成新结点插入n后 q = q->link;}result.PolyAdd(tmp); //将temp加到result上p = p->link;}Term *q = theList->link; //q指向表头结点的后继结点while(q != NULL) //删除原对象的所有数据{theList->link = q->link;delete q;q = theList->link;}q = theList;q = q->InsertAfter(0, 0);PolyAdd(result); //将result加到当前对象上}ostream &operator<<(ostream& out, const Polynominal& x){x.Output(out);return out;}istream &operator>>(istream& in, Polynominal &x){x.AddTerms(in);return in;}Polynominal & operator + (Polynominal &a, Polynominal &b){a.PolyAdd(b);return a;}Polynominal & operator * (Polynominal &a, Polynominal &b){a.PolyMul(b);return a;}int main()实验报告文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.。

南邮 软件设计 数据库 实验详细过程及报告

南邮 软件设计 数据库 实验详细过程及报告

2012 /2013 学年第二学期软件设计实验报告模块名称数据库软件设计专业学生班级学生学号学生姓名指导教师报告内容(正文为宋体小四)实验一:内容:了解SQLserver和MySql的安装及使用;学会对企业管理器、查询分析器的使用;建立一个学生表、课程表及学生选课关联表,并用SQL语句进行相关插入、查询、删除等操作;步骤:1、打开企业管理器,建立一个名为10002434的数据库。

2.建立基本表:学生、课程和选课,写出DDL语句。

学生表:INSERT INTO Student V ALUES('10001','李勇','男','20','CS');INSERT INTO Student V ALUES('10002','刘晨','女','19','IS');INSERT INTO Student V ALUES('10003','王敏','女','18','MA');INSERT INTO Student V ALUES('10004','张立','男','18','IS');INSERT INTO Student V ALUES('10005','丁雨','女','19','MA');课程表INSERT INTO Course VALUES('1','数据库','5','4');INSERT INTO Course VALUES('2','数学','NULL','2');INSERT INTO Course VALUES('3','信息系统','1','4');INSERT INTO Course VALUES('4','操作系统','6','3');INSERT INTO Course VALUES('5','数据结构','7','4');INSERT INTO Course VALUES('6','数据处理','NULL','2');INSERT INTO Course VALUES('7','PASCAL语言','6','4');选课:INSERT INTO SC VALUES('10001','1','92'); INSERT INTO SC VALUES('10001','2','85'); INSERT INTO SC VALUES('10002','3','88'); INSERT INTO SC VALUES('10003','2','90');INSERT INTO SC VALUES('10003','5','75');(3)写出向数据库中插入和修改数据的DML语句delete from sc where sno='10001'insert into sc values('10005','4',79)实验二:内容:通过odbc 桥访问数据库。

南邮数据结构实验三

南邮数据结构实验三

南邮数据结构实验三南京邮电大学数据结构实验三、链表的基本操作实验目的本次实验的主要目的是理解链表的概念,掌握链表的基本操作,包括链表的创建、插入、删除和遍历。

实验内容本次实验分为以下几个部分:1、链表的定义与创建1.1 链表的概念链表是一种常见的数据结构,由一系列节点组成,每个节点包含数据和指向下一个节点的指针。

链表可以分为单链表、双链表和循环链表等不同类型。

本次实验将创建一个单链表。

1.2 链表节点的定义链表节点包含两个成员变量,分别是数据域和指针域。

数据域用于存储节点的数据,指针域指向下一个节点。

1.3 链表的创建在主函数中创建一个空链表,并添加一些初始数据,用于后续的操作。

2、链表的插入操作2.1 插入节点的位置链表的插入操作需要指定节点插入的位置,可以在链表的头部、尾部或者中间插入新节点。

2.2 插入节点的操作根据所选位置,在链表中插入新节点,并更新相应的指针。

3、链表的删除操作3.1 删除节点的位置链表的删除操作需要指定节点删除的位置,可以删除头节点、尾节点或者中间节点。

3.2 删除节点的操作根据所选位置,删除链表中的节点,并更新相应的指针。

4、链表的遍历操作通过循环遍历链表的所有节点,并输出每个节点的数据。

附件说明本文档涉及以下附件:附件1:源代码附件2:实验报告法律名词及注释本文所涉及的法律名词及注释如下:1、数据结构:数据的存储方式和操作组成的集合。

在计算机科学中,数据结构是计算机中存储、组织数据的方式。

2、链表:链表是一种常见的数据结构,由一系列节点组成,每个节点包含数据和指向下一个节点的指针。

3、节点:链表中的一个元素,包含数据域和指针域。

4、数据域:节点中存储的数据。

5、指针域:节点中指向下一个节点的指针。

6、插入操作:在链表中插入一个新节点。

7、删除操作:从链表中删除一个节点。

8、遍历操作:按照一定的顺序访问链表中的所有节点。

全文结束。

南邮单片机实验报告

南邮单片机实验报告

南邮单片机实验报告篇一:南邮数据库实验报告数据库实验报告( XX / XX 学年第二学期)??学号姓名指导教师成绩一、数据库原理第一次实验【一】实验内容:数据库表的建立与管理【二】、实验目的:学习数据库及表的建立、删除、更新等操作。

注:本次实验题目,除了特殊要求,以T-SQL为主,并将所有语句标注好题号,留存在查询界面上,方便检查。

【三】、实验题目及其解答: 1、创建一名为‘test’的数据库;CREATE DATABASE test2、在“test”数据库中新建一张部门表“部门”,输入列:name(char,10位),ID(char,7位),manager (char,10位)各列均不能为空值。

Solution: use testCREATE TABLE 部门(ID CHAR(7) NOT NULL,name CHAR(10) NOT NULL,manager CHAR(10) NOT NULL) 结果:3、在“test”数据库中新建一张员工表,命名为“员工”。

在表中输入以下各列: name(char,10位),personID(char,7位),Sex(char,7位),birthday(datetime),deptID(char,7位),各列均不能为空值。

CREATE TABLE 员工(name CHAR(10) NOT NULL, personID CHAR(7) NOT NULL, sex CHAR(7) NOT NULL, birthday datetime NOT NULL, deptID CHAR(7) NOT NULL) 结果:4、修改表的操作练习:1)将‘部门’表中的列ID设为主键; 2)将‘员工’表中personID设为主键,并将deptID设置为外键,关联到‘部门’表上的‘ID’列;3)在‘部门’表中,添加列quantity(char, 5);4) 删除‘员工’表中的列‘sex’;5)修改‘员工’表中列name为(varchar,8)ALTER TABLE 部门 ADD CONSTRAINT C1 PRIMARY KEY(ID)ALTER TABLE 员工ADD CONSTRAINT C2 PRIMARYKEY( personID )ALTER TABLE 员工ADD CONSTRAINT C3 FOREIGN KEY(deptID) REFERENCES 部门(ID) ALTER TABLE 部门 ADD quantity CHAR(5) ALTER TABLE 员工 DROP COLUMN sex ALTER TABLE 员工 ALTER COLUMN name VARCHAR(8) 结果:5、1)在数据库test中新建表scores,输入以下列:ID (char,8位)主键, C语言numeric(3,1) ,IT英语numeric(3,1) ,数据库 numeric(3,1) ,软件基础 numeric(3,1) ,平均成绩。

数据库课内实验报告

数据库课内实验报告
(7)找出没有使用天津产的零件的工程号码。
SELECT JNO FROM SPJ WHERE JNO NOT IN
(SELECT JNO FROM SPJ,S
WHERE S.SNO=SPJ.SNO AND S.CITY='天津')
(8)把全部红色零件的颜色改成蓝色。
UPDATE P SET COLOR='蓝' WHERE COLOR='红'
2)求供应工程J1零件P1的供应商号码SNO:
πSno(σSno=‘J1’∧Pno=‘P1‘(SPJ))
3)求供应工程J1零件为红色的供应商号码SNO:
πSno(σPno=‘P1‘(σCOLOR=’红‘(P)∞SPJ))
4)求没有使用天津供应商生产的红色零件的工程号JNO:
πJno(SPJ)- πJNO(σcity=‘天津’∧Color=‘红‘(S∞SPJ∞P)
( 5)求至少用了供应商Sl所供应的全部零件的工程号JNO ;
由于VFP不允许子查询嵌套太深,将查询分为两步
A、查询S1供应商供应的零件号
SELECT PNO FROM SPJ WHERE SNO='S1'
B、查询哪一个工程既使用P1零件又使用P2零件。
SELECT JNOFROM SPJ WHERE PNO='P1'
课内实验报告
课 程 名:数据库原理与应用
********
专业:信息管理与信息系统
学 号:********
**********
二○一一至二○一二年度第1学期
南京邮电大学经济与管理学院
《数据库原理与应用》课程实验第1次实验报告
实验内容及基本要求:

南邮数据结构实验一

南邮数据结构实验一

实验报告
( 2016 / 2017 学年第一学期)
课程名称数据结构A
实验名称线性表的基本运算及多项式的算术运算实验时间2017 年 3 月22 日指导单位计算机学院计算机科学与技术系
指导教师邹志强
学生姓名吴爱天班级学号B15040916 学院(系) 计算机学院专业信息安全
实验报告
实验报告
度为O(n)级别。

2、在顺序表类SeqList 中增加成员函数bool DeleteX (const T &x), 删除表中所有元素值等于x 的元素.若表中存在这样的元素, 则删除之, 且函数返回true, 否则函数返回false.
删除所有值为X的元素
注释:主要思路为,依次查找SeqList内的元素,每次都与X的值进行依次对比,如果相同则删除,不同则继续向下扫描,知道SeqList末尾,最后用Search()来检验是否删除干净,复杂度也为O(n).
如图,原数据为 7 49 73 58 30 72,逆转过后为72 30 58 73 49 7,符合预期。

DeleteX()
如图,原数据中有3个0,输出结果中已经没有0,已经删除干净,符合预期。

实验报告
如图,分别检测6X^6+3X^5+4X^2与2X^2+3X相加和相乘运算,得到
6X^6+3X^5+4X^2+2X^2+3X+2X^2+3X和12X^8+18X^7+6X^7+9X^6+8X^4+12X^3,
符合预期。

南邮数学实验报告

南邮数学实验报告

南邮数学实验报告
实验目的:
本实验旨在帮助学生基于对不同数学概念的理解和应用,掌握
数学实验中的基本技能和科学方法,以及加强团队协作和实验报
告撰写能力。

实验内容:
1.选择适当的数列,并利用不同的方法来研究和描述该数列的
性质和规律。

2.利用数学软件工具如Mathematica和Excel等来验证和分析数
列的特征,并通过可视化图形进行展示。

3.完成实验报告和展示,并与同学和教师之间进行交流和互动。

实验步骤:
1.选择一个数列,并介绍其基本特征和规律。

2.利用手工计算和计算机软件工具进行数列的推导和验证。

3.绘制数列的图形表示,并通过图形分析来说明数列性质。

4.进行更深入的探索,如在数列之间搜索、联系和推理,并加
强对数学概念和方法的理解。

5.结合实验数据,形成文献综述和分析,并撰写实验报告。

实验结果:
通过实验学习和探索,我们深入了解了数列的性质和规律。


们还掌握了一些基本的数学实验技能,如数据分析、可视化图形、以及实验报告撰写等。

最重要的,我们加强了团队协作和沟通,
更好地理解和应用数学知识。

结论:
数学实验是帮助学生理解和应用数学知识的重要途径。

它不仅可以促进学生的动手能力和创新思维,还可以帮助学生加强团队协作和实验报告撰写能力。

对于未来从事科研工作的学生来说,数学实验将是非常有益的经验和见识。

南邮数据结构实验报告

南邮数据结构实验报告

南邮数据结构实验报告实验目的,通过本次实验,我们旨在加深对数据结构的理解,掌握数据结构的基本操作和算法设计能力,提高对数据结构的应用能力和实际问题的解决能力。

一、实验内容。

1. 实验一,线性表的基本操作。

本次实验中,我们首先学习了线性表的基本概念和操作,包括插入、删除、查找等操作,并通过实际编程操作来加深对线性表的理解。

2. 实验二,栈和队列的应用。

在实验二中,我们通过实际编程操作来学习栈和队列的应用,包括中缀表达式转换为后缀表达式、栈的应用、队列的应用等内容。

3. 实验三,树和二叉树的基本操作。

实验三中,我们学习了树和二叉树的基本概念和操作,包括树的遍历、二叉树的建立和遍历等内容,并通过实际编程操作来加深对树和二叉树的理解。

4. 实验四,图的基本操作。

最后,我们学习了图的基本概念和操作,包括图的存储结构、图的遍历等内容,并通过实际编程操作来加深对图的理解。

二、实验过程。

在实验过程中,我们首先对实验内容进行了深入的学习和理解,掌握了数据结构的基本概念和操作方法。

然后,我们通过实际编程操作来加深对数据结构的理解,并通过调试和修改程序来提高对数据结构的应用能力和实际问题的解决能力。

在实验过程中,我们遇到了一些问题,但通过不懈的努力和团队合作,最终顺利完成了实验任务。

三、实验结果与分析。

通过本次实验,我们深入理解了数据结构的基本概念和操作方法,掌握了线性表、栈、队列、树、二叉树和图的基本操作,并通过实际编程操作加深了对数据结构的理解。

同时,我们也提高了对数据结构的应用能力和实际问题的解决能力,为今后的学习和工作打下了坚实的基础。

四、实验总结。

通过本次实验,我们不仅加深了对数据结构的理解,还提高了对数据结构的应用能力和实际问题的解决能力。

在今后的学习和工作中,我们将继续努力,不断提升自己的专业能力,为将来的发展打下坚实的基础。

以上就是本次实验的报告内容,谢谢!。

南邮数据库实验报告

南邮数据库实验报告

南邮数据库实验报告一、引言数据库是存储、管理和操作大量数据的软件系统。

它在现代计算机系统中起着至关重要的作用。

本次实验旨在让我们了解数据库的基本概念、原理和操作方法,以及数据库管理系统的应用。

二、实验目的1.了解数据库的基本概念、特点和分类。

2.掌握关系型数据库的设计方法和操作技术。

3.学习SQL语言的编写和查询。

三、实验内容本次实验主要包括以下三个部分的内容:1.数据库的创建和设计根据给定的需求,我们需要创建一个学生信息管理系统的数据库。

首先,我们需要设计数据库的表结构,包括学生表、课程表、成绩表等,以及它们之间的关系。

然后,我们使用SQL语句创建这些表,并插入测试数据进行测试。

2.SQL查询操作在这一部分,我们将学习如何使用SQL语句进行基本的查询操作。

包括简单的SELECT语句、WHERE条件查询、多表连接查询等。

通过这些查询语句,我们可以方便地从数据库中获取所需的信息。

3.实验总结和思考在实验结束后,我们需要对本次实验进行总结和思考。

总结本次实验的收获和经验,思考数据库的优点和不足之处,以及对未来数据库研究的展望等。

四、实验过程1.数据库的创建和设计我们首先根据需求,确定了数据库的表结构,包括学生表(Student)、课程表(Course)和成绩表(Score)。

学生表包括学生学号(id)、姓名(name)、性别(gender)等信息;课程表包括课程编号(id)、课程名称(name)等信息;成绩表包括学生学号(student_id)、课程编号(course_id)和成绩(score)等信息。

然后,我们使用SQL语句创建这些表,并插入测试数据。

2.SQL查询操作我们学习了常用的SQL查询语句,如SELECT、FROM、WHERE等。

通过这些语句,我们可以轻松地进行数据的查询和筛选。

例如,我们可以使用以下SQL语句查询所有学生的信息:SELECT * FROM Student;还可以使用以下SQL语句查询指定学生的姓名和性别:另外,我们还学习了多表连接查询,可以根据不同的条件将多个表连接在一起,获取需要的信息。

南邮单片机实验报告doc

南邮单片机实验报告doc

南邮单片机实验报告篇一:南邮数据库实验报告数据库实验报告( XX / XX 学年第二学期)??学号姓名指导教师成绩一、数据库原理第一次实验【一】实验内容:数据库表的建立与管理【二】、实验目的:学习数据库及表的建立、删除、更新等操作。

注:本次实验题目,除了特殊要求,以T-SQL为主,并将所有语句标注好题号,留存在查询界面上,方便检查。

【三】、实验题目及其解答: 1、创建一名为‘test’的数据库;CREATE DATABASE test2、在“test”数据库中新建一张部门表“部门”,输入列:name(char,10位),ID(char,7位),manager (char,10位)各列均不能为空值。

Solution: use testCREATE TABLE 部门(ID CHAR(7) NOT NULL,name CHAR(10) NOT NULL,manager CHAR(10) NOT NULL) 结果:3、在“test”数据库中新建一张员工表,命名为“员工”。

在表中输入以下各列: name(char,10位),personID(char,7位),Sex(char,7位),birthday(datetime),deptID(char,7位),各列均不能为空值。

CREATE TABLE 员工(name CHAR(10) NOT NULL, personID CHAR(7) NOT NULL, sex CHAR(7) NOT NULL, birthday datetime NOT NULL, deptID CHAR(7) NOT NULL) 结果:4、修改表的操作练习:1)将‘部门’表中的列ID设为主键; 2)将‘员工’表中personID设为主键,并将deptID设置为外键,关联到‘部门’表上的‘ID’列;3)在‘部门’表中,添加列quantity(char, 5);4) 删除‘员工’表中的列‘sex’;5)修改‘员工’表中列name为(varchar,8)ALTER TABLE 部门 ADD CONSTRAINT C1 PRIMARY KEY(ID)ALTER TABLE 员工ADD CONSTRAINT C2 PRIMARY KEY( personID )ALTER TABLE 员工ADD CONSTRAINT C3 FOREIGNKEY(deptID) REFERENCES 部门(ID) ALTER TABLE 部门 ADD quantity CHAR(5) ALTER TABLE 员工 DROP COLUMN sex ALTER TABLE 员工 ALTER COLUMN name VARCHAR(8) 结果:5、1)在数据库test中新建表scores,输入以下列:ID (char,8位)主键, C语言numeric(3,1) ,IT英语numeric(3,1) ,数据库 numeric(3,1) ,软件基础 numeric(3,1) ,平均成绩。

南邮数据结构实验三

南邮数据结构实验三

实验报告(2015 / 2016 学年第一学期)课程名称数据结构实验名称图的基本运算及飞机换乘次数最少问题实验时间2015 年12 月 4 日指导单位计算机科学与技术系指导教师黄海平学生姓名陈明阳班级学号Q14010119 学院(系)贝尔英才专业信息科技强化班实验报告实验名称图的基本运算及飞机换乘次数最少问题指导教师黄海平实验类型验证实验学时 4 实验时间12。

4一、实验目的和要求飞机最少换乘次数问题。

(1)设有n个城市,编号为0~n-1,m条航线的起点和终点由用户输入提供。

寻找一条换乘次数最少的线路方案。

(2)参考:可以使用有向图表示城市间的航线;只要两城市间有航班,则图中这两点间存在一条权值为1的边;可以使用Dijkstra算法实现。

二、实验环境(实验设备)VSUAL STUDIO2015三、实验原理及内容对象视图:源代码:Graph。

h#include<iostream>#include<string.h〉using namespace std;const int INF = 2147483647;enum ResultCode { Underflow,Duplicate,Failure,Success, NotPresent,OutOfBounds};template <class T〉class Graph//抽象类{public:virtual ResultCode Insert(int u, int v,T w) = 0;virtual ResultCode Remove(int u, int v) = 0;virtual bool Exist(int u, int v)const = 0;protected:int n, e;};template <class T>class MGraph :public Graph〈T> //邻接矩阵类{public:MGraph(int mSize, const T noedg);~MGraph();ResultCode Insert(int u,int v,T w);ResultCode Remove(int u,int v);bool Exist(int u,int v)const;int Choose(int*d, bool *s);void Dijkstra(int v,T *d, int*path);protected:T **a;T noEdge;};template〈class T〉MGraph〈T>::MGraph(int mSize, const T noedg){n = mSize;e = 0;noEdge = noedg;a = new T*[n];for(int i = 0; i〈n; i++){a[i] = new T[n];for(int j = 0; j〈n; j++)a[i][j] = noEdge;a[i][i] = 0;}}template〈class T>MGraph〈T>::~MGraph(){for (int i = 0; i〈n; i++)delete[]a[i];delete[]a;}template <class T〉ResultCode MGraph〈T>::Insert(int u, int v,T w){if (u<0 || v〈0 ||u>n — 1 || v〉n — 1 ||u == v)return Failure;if(a[u][v] != noEdge)return Duplicate;a[u][v] = w;a[v][u] = w;e++;return Success;}template〈class T〉ResultCode MGraph<T>::Remove(int u, int v){if(u<0 ||v〈0 ||u〉n — 1 ||v〉n - 1 ||u == v)return Failure;if (a[u][v] == noEdge)return NotPresent;a[u][v] = noEdge;a[v][u] = noEdge;e—-;return Success;}template〈class T〉bool MGraph〈T〉::Exist(int u,int v)const{if(u<0 || v<0 || u>n - 1 || v>n - 1 || u == v|| a[u][v] == noEdge) return false;return true;}template <class T>int MGraph<T>::Choose(int*d,bool *s) //求最小d[i]{int i, minpos;T min;min = INF;minpos = -1;for(i = 0; i<n; i++)if(d[i]〈= min&&!s[i]){min = d[i];minpos = i;}return minpos;}template <class T〉void MGraph〈T>::Dijkstra(int v,T*d,int *path)//迪杰斯特拉算法{int i, k, w;if (v〈0 ||v〉n — 1)throw OutOfBounds;bool *s = new bool[n];for(i = 0; i<n; i++){s[i] = false;d[i] = a[v][i];if(i != v&&d[i]<INF)path[i] = v;elsepath[i] = -1;}s[v] = true;d[v] = 0;for (i = 1; i〈n; i++){k = Choose(d, s);s[k] = true;for(w = 0; w<n; w++)if (!s[w]&& (d[k] + a[k][w])<d[w]){d[w] = d[k] + a[k][w];path[w] = k;}}}源.cpp#include<iostream〉#include<string。

南邮大数据编程实训报告

南邮大数据编程实训报告

一、实训背景随着信息技术的飞速发展,大数据已成为国家战略资源。

为了培养适应时代需求的大数据技术人才,南京邮电大学(以下简称“南邮”)开设了大数据编程实训课程。

本次实训旨在通过实践操作,使学生掌握大数据技术的基本原理和编程技能,提高解决实际问题的能力。

二、实训目标1. 理解大数据的基本概念、技术架构和发展趋势。

2. 掌握Hadoop、Spark等大数据处理框架的使用方法。

3. 熟悉大数据编程语言,如Java、Scala等。

4. 能够运用大数据技术解决实际问题,提高编程能力。

三、实训内容本次实训主要分为以下几个部分:1. 大数据概述- 学习大数据的基本概念、技术架构和发展趋势。

- 了解大数据在各个领域的应用。

2. Hadoop生态圈- 学习Hadoop分布式文件系统(HDFS)的基本原理和使用方法。

- 掌握Hadoop MapReduce编程模型,实现数据的分布式处理。

- 熟悉Hadoop生态圈中的其他组件,如Hive、HBase、YARN等。

3. Spark编程- 学习Spark的基本原理和使用方法。

- 掌握Spark的核心编程模型,如Spark SQL、Spark Streaming等。

- 实践Spark与Hadoop生态圈的整合。

4. 数据挖掘与分析- 学习数据挖掘的基本方法,如聚类、分类、关联规则等。

- 掌握数据可视化工具,如ECharts、D3.js等。

- 实现数据挖掘与分析项目。

5. 项目实践- 根据实际需求,选择合适的大数据技术栈,完成项目实践。

- 项目实践包括需求分析、设计、开发、测试、部署等环节。

四、实训过程1. 阶段一:理论学习- 通过课堂讲授、自学等方式,掌握大数据相关理论知识。

2. 阶段二:实验操作- 在实验室内,按照实训指导书的要求,进行实验操作。

- 针对实验过程中遇到的问题,与同学和老师进行讨论。

3. 阶段三:项目实践- 根据项目需求,选择合适的大数据技术栈。

- 在老师的指导下,完成项目实践。

南邮数据库实验三

南邮数据库实验三

实验报告( 2012 / 2013 学年第二学期)课程名称数据库系统实验名称DBMS的数据库保护实验时间2013 年 5 月24 日指导单位计算机学院软件工程系指导教师张少娴学生姓名王建峰班级学号10001110 学院(系) 通达学院专业信息安全在oracle中,授权语句不支持如同garnt select(属性名列表) on <表名> to 用户名这样的格式,所以先建视图,然后再对视图设存取控制权限。

CONNECT SCOTT/TIGER;create view vemp(empno,ename,deptno) as select empno,ename,deptno from emp;grant select on vemp to public;(2)用户U1拥有对表emp的删除权限和对奖金(comm)的修改权限,并具备转授这些权限的权力。

grant delete,update(comm) on emp to u1 with grant option; scott用户状态下(在scott用户下输入DESC EMP 查看emp表的结构)(3)用户U1授予用户U2对员工表的删除权。

以U1身份进入:connect u1/abcgrant delete on scott.emp to u2;(4)回收用户U1和用户U2对员工表的删除权。

Connect scott/tigerrevoke delete on emp from U1; (不需要对U2 操作级联回收删除权限)3.创建新用户,为其授予对SCOTT用户的EMP表的所有操作权限。

grant all privileges on emp to u1 with grant option;4.观察多事务并发时的数据库保护效果,理解锁机制的工作原理。

(1)分别以scott和自己的用户名登录数据库(自己用户要重新打开一个窗口U1 ABC)各自输入命令:set auto off(2)scott在事务1中将10号部门所有员工工资增加200元图 1(3)自己的用户在事务2中将工号以77开头的员工工资(在U1中操作)增加300元。

南邮数据结构实验一

南邮数据结构实验一

南邮数据结构实验一数据结构是计算机科学中非常重要的一门课程,它研究的是如何组织和管理数据以便于高效地访问和操作。

在南京邮电大学的数据结构课程中,实验一是我们的第一个实验,旨在帮助我们熟悉基本的数据结构和算法。

任务一:线性表的实现线性表是一种最基本的数据结构,它由一组有序的元素组成,每个元素都有一个唯一的前驱和后继。

在这个实验中,我们需要实现一个线性表,并实现一些基本的操作,比如插入、删除和查找。

首先,我们需要定义一个数据结构来表示线性表。

一种常见的实现方式是使用数组,我们可以定义一个固定大小的数组来存储线性表的元素。

另一种方式是使用链表,我们可以定义一个节点结构来存储每个元素,并使用指针将这些节点连接起来。

接下来,我们需要实现线性表的插入操作。

插入操作可以在线性表的任意位置插入一个元素。

我们可以通过移动其他元素的位置来为新元素腾出空间,并将新元素插入到指定位置。

删除操作是将线性表中的一个元素移除。

我们可以通过将被删除元素的前驱和后继连接起来,跳过被删除元素来实现删除操作。

查找操作是在线性表中查找指定元素的位置。

我们可以遍历整个线性表,逐个比较元素的值,直到找到目标元素或者遍历完整个线性表。

任务二:栈的实现栈是一种特殊的线性表,它只允许在表的一端进行插入和删除操作。

栈的特点是先进后出,即最后插入的元素最先删除。

在这个实验中,我们需要实现一个栈,并实现一些基本的操作,比如入栈、出栈和判断栈是否为空。

与线性表类似,我们可以使用数组或链表来实现栈。

如果使用数组,我们需要定义一个指针来指示栈顶的位置。

如果使用链表,我们可以使用头指针来指示栈顶的位置。

入栈操作是将一个元素插入到栈顶。

我们可以将元素插入到数组的指定位置,或者创建一个新的节点并将其连接到链表的头部。

出栈操作是将栈顶的元素移除。

我们可以将栈顶的元素从数组中删除,或者将链表的头节点移除。

判断栈是否为空可以通过检查栈顶指针或者链表头指针是否为空来实现。

SQL语言的应用 南京邮电大学软件工程与数据库实验报告一

SQL语言的应用  南京邮电大学软件工程与数据库实验报告一

实验报告一实验名称:SQL语言的应用指导教师:茅苏实验类型:验证实验学时:4*2实验时间:2012年9月28日一、实验目的和要求练习使用SQL SERVER数据库产品,熟练使用查询分析器和企业管理器;掌握SQL语言中常用的语句:用DDL创建基本表;用DML插入、修改、删除数据;用QL查询数据等。

二、实验环境(实验设备)硬件:个人计算机;软件:MS SQL SERVER环境。

三、实验原理及内容1.用SQL SERVER的企业管理器创建数据库数据库名称:10001927db操作步骤:1、单击左侧的SQL Server组 右键 新建SQL Server注册 下一步 在左侧的“可用的服务器”栏选中或输入CC-PC,点击中间的添加,将CC-PC添加到右侧的“添加的服务器”栏 下一步选中“登录时使用Windows身份认证”,然后点击下一步 选中“在现有SQL Server组中添加SQL Server”,然后点击下一步 完成 关闭。

2、单击左侧的SQL Server组下面可用的已注册子组里面的数据库→右键→新建数据库→输入数据库名称10001927db2.用查询分析器在上一步创建的数据库中完成以下功能(1)进入查询分析器并选择操作的数据库操作步骤:1、开始→程序→MS SQL Server→查询分析器确认SQL Server(s)为CC-PC选择Windows身份认证点击确定2、在工具栏的下拉链表种选择名为10001927db的数据库。

(2)建立基本表:学生、课程和选课,写出DDL语句。

要求:需为每张表建立主键,其他完整性约束可自己添加。

建立学生表create table student( 学号 char(5)not null unique,姓名 char(20),年龄 int,性别 char(1),);添加主键学号alter table student add primary key(学号); 课程建立课程表create table class( 课程号 char(5)not null unique,课程名 char(20),学时 int,学分 int,课程性质 CHAR(20),);添加主键课程号alter table class add primary key(课程号);建立选课表create table sc( 学号 char(5)not null unique,课程号 char(5)not null unique,成绩 int,);添加外键alter table sc add constraint 课程号 foreign key (课程号) references class(课程号);alter table sc add constraint 学号foreign key (学号) references student(学号);(3)写出向数据库中插入和修改数据的DML语句1)在上述3张表中插入相关数据,每张表至少插入2条记录。

南邮数据结构实验报告

南邮数据结构实验报告

南邮数据结构实验报告
实验目的:
本次实验的目的是让我们掌握基本的数据结构,以及如何用代码的形式实现。

实验内容:
1. 实验要求我们使用C语言来实现一个双向链表和一个栈。

2. 首先,我们要学习什么是双向链表以及如何在代码中实现双向链表。

3. 接下来,我们要学习什么是栈以及如何在代码中实现栈。

实验过程:
在学习了双向链表与栈的概念后,我们开始编写代码。

在编写双向链表的代码时,我们需要定义一个结构体来储存双向链表中
的每一个节点,并且节点中要包括指向前一个节点和后一个节点
的指针,以此实现双向链表的双向性。

接着,我们开始编写栈的代码。

栈是一个后进先出的数据结构,因此我们需要实现一个“push”函数与一个“pop”函数。

在代码的实
现中,我们使用一个数组和一个指针来完成栈的操作。

实验结果:
经过一番努力,我们成功地实现了双向链表与栈的功能。

我们
将数据存入双向链表中,然后再将数据移入栈中进行操作,最终
得出了正确的结果。

实验总结:
通过这次实验,我们学会了如何用代码来实现基本的数据结构,锻炼了我们的编程能力。

在以后的学习过程中,我们要继续加强
对数据结构的理解,不断提高自己的编程水平。

2023南邮认识实习报告_1

2023南邮认识实习报告_1

2023南邮认识实习报告2023南邮认识实习报告1实习周的第一天,我随班来到了南邮本部。

首先参观了软交换实验室。

随着通信网络技术的飞速发展,人们对于宽带及业务的要求也在迅速增长,为了向用户提供更加灵活、多样的现有业务和新增业务,提供给用户更加个性化的服务,提出了下一代网络的概念,且目前各大电信运营商已开始着手进行下一代通信网络的实验。

软交换技术又是下一代通信网络解决方案中的焦点之一,已成为近年来业界讨论的热点话题。

我国网络与交换标准研究组已经完成了有关软交换体系的总体技术要求框架,863计划也对有关软交换系统在多媒体和移动通信系统方面的研究课题进行了立项。

软交换的概念最早起源于美国。

当时在企业网络环境下,用户采用基于以太网的电话,通过一套基于pc服务器的呼叫控制软件,实现pbx功能。

对于这样一套设备,系统不需单独铺设网络,而只通过与局域网共享就可实现管理与维护的统一,综合成本远低于传统的pbx。

由于企业网环境对设备的可靠性、计费和管理要求不高,主要用于满足通信需求,设备门槛低,许多设备商都可提供此类解决方案,因此ippbx应用获得了巨大成功。

受到ippbx成功的启发,为了提高网络综合运营效益,网络的发展更加趋于合理、开放,更好的服务于用户。

业界提出了这样一种思想:将传统的交换设备部件化,分为呼叫控制与媒体处理,二者之间采用标准协议且主要使用纯软件进行处理,于是,softswitch(软交换)技术应运而生。

软交换是下一代网络的核心设备之一,各运营商在组建基于软交换技术的网络结构时,必须考虑到与其它各种网络的互通。

在下一代网络中,应有一个较统一的网络系统结构。

软交换与应用/业务层之间的接口提供访问各种数据库、三方应用平台、功能服务器等接口,实现对增值业务、管理业务和三方应用的支持。

其中:软交换与应用服务器间的接口可采用sip、api,如parlay,提供对三方应用和增值业务的支持;软交换与策略服务器间的接口对网络设备工作进行动态干预,可采用cops协议;软交换与网关中心间的接口实现网络管理,采用snmp;软交换与智能网scp之间的接口实现对现有智能网业务的支持,采用inap协议。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(17)求出每一个班级中每一门课程获得最高分的学生的学号
实验结果:
1、数据库表
(1)学生表
(2)课程表
(3)成绩表
(4)教师表
2、查询结果及SQL语言
(1)找出男性学生的姓名
SELECT NAME
FROM S
WHERE XB="男";
(2)找出不是“2031”班的学生
SELECT *
FROM S
WHERE SNO NOT IN
(SELECT SNO
FROM S
WHERE CLASSNO='B131115');
(3)查询“李峰”老师所教课程的课程名称和学分
SELECT CNAME, XF
FROM T, C
WHERE NAME="李峰" And T.TNO=C.TNO;
(4)检索出选修了课程代号为“c11”和“c23”课程的学生
(8)检索出没有被任何学生选修的课程
SELECT *
FROM C
WHERE O NOT IN (SELECT O FROM G);
(9)求出每个学生的成绩的平均分和总分
SELECT S.SNO, Avg(G.GRADE) AS平均分, Sum(G.GRADE) AS总分
FROM S INNER JOIN G ON S.SNO=G.SNO
SELECT S.SNO, O, AME
FROM (S INNER JOIN G ON S.SNO=G.SNO) INNER JOIN C ON O=O
WHERE S.SNO LIKE'B13111502' AND Exists (SELECT* FROM G AS G2 WHERE O=O AND G2.SNO LIKE'B13111510')<>False;
HAVING Sum(G.GRADE)>200;
(12)求出少于10个学生选修的课程
SELECT AME, O, Count(G.GRADE) AS GRADE之计数
FROM (S INNER JOIN G ON S.SNO=G.SNO) INNER JOIN C ON O=O
GROUP BY S.SNO;
(10)求至少三门以上课程成绩在90分以上的学生学号
SELECT , S.SNO, Count(G.GRADE) AS GRADE之计数
FROM S INNER JOIN G ON S.SNO=G.SNO
WHERE (((G.GRADE)>90))
GROUP BY , S.SNO
HAVING (((COUNT(G.GRADE))>2));
(11)求获得学分数在200以上的学生
SELECT S.SNO, , Sum(G.GRADE) AS GREAT之总计
FROM S INNER JOIN G ON S.SNO=G.SNO
GROUP BY S.SNO,
WHERE (((G.GRADE)<60))
GROUP BY
HAVING (((Count(G.GRADE))=4));
(14)求出每个老师所教课程的学分总数
SELECT C.TNO, , Sum(C.XF) AS XF之总计
FROM C INNER JOIN T ON C.TNO=T.TNO
SELECT SNO
FROM G
WHERE CNO In ("1","2");
(5)查询至少选修了一门“李峰”老师的课程的学生姓名
SELECT , S.SNO
FROM (S INNER JOIN G ON S.SNO=G.SNO) INNER JOIN C ON O=O
WHERE O="6" Or O="7"
SELECT S.CLASSNO, O, Max(G.GRADE) AS最高分
FROM S INNER JOIN G ON S.SNO=G.SNO
GROUP BY S.CLASSNO, O;
成绩评定:
该生对待本次实验的态度□认真□良好□一般□比较差。
本次实验的过程情况□很好□较好□一般□比较差
(9)求出每个学生的成绩的平均分和总分
(10)求至少三门以上课程成绩在90分以上的学生学号
(11)求获得学分数在200以上的学生
(12)求出少于10个学生选修的课程
(13)求出有四门课程考试不及格的学生的姓名
(14)求出每个老师所教课程的学分总数
(15)求出教了三门课以上的老师
(16)求出只教一门课程的老师
课内实验报告
课程名:数据库原理与应用
********
专业:信息管理与信息系统
学号:B********
******
二○一四至二○一五年度第二学期
南京邮电大学管理学院
《数据库原理与应用》课程实验报告
实验内容及基本要求:
实验项目名称:学生成绩管理数据库的建立
实验类型:上机实验
实验内容及要求:
1、构建一个教学管理关系数据库如下:
GROUP BY C.TNO, ;
(15)求出教了三门课以上的老师
SELECT , T.TNO, 源自ount(O) AS CNO之计数
FROM T INNER JOIN C ON T.TNO = C.TNO
GROUP BY , T.TNO
HAVING (((Count(O))>=3));
(16)求出只教一门课程的老师
SELECT , T.TNO, Count(O) AS CNO之计数
FROM T INNER JOIN C ON T.TNO=C.TNO
GROUP BY , T.TNO
HAVING (((Count(O))=1));
(17)求出每一个班级中每一门课程获得最高分的学生的学号
对实验结果的分析□很好□良好□一般□比较差
文档书写符合规范程度□很好□良好□一般□比较差
综合意见:
成绩
指导教师签名
程录庆
日期
2014-4-24
(3)查询“李峰”老师所教课程的课程名称和学分
(4)检索出选修了课程代号为“c11”和“c23”课程的学生
(5)查询至少选修了一门“李峰”老师的课程的学生姓名
(6)求选修了课程名为“数据库原理”的所有学生的学号和姓名
(7)找出学生代号为“S101”和“S102”两个学生都选修了的课程
(8)检索出没有被任何学生选修的课程
GROUP BY AME, O
HAVING (((Count(G.GRADE))<10));
(13)求出有四门课程考试不及格的学生的姓名
SELECT , Count(G.GRADE) AS GRADE之计数
FROM S INNER JOIN G ON S.SNO=G.SNO
学生(学号,姓名,性别,年龄,籍贯,班级代号)
课程(课程号,课程名称,学分数,教师代号)
成绩(学号,课程号,成绩,考试时间)
教师(教师代号,姓名,性别,年龄,职称)
为方便起见,上述关系用英文字母表示如下:
S(SNO,NAME,SEX,AGE,JG,CLASSNO)
C(CNO,CNAME,XF,TNO)
G(SNO,CNO,GRADE,DATE)
T(TNO,NAME,SEX,AGE,ZC)
2、上述关系模式中,带下划线的属性为各自关系的关键字,其中学生表输入20条记录;课程表输入10条记录;成绩表输入100条记录;教师表入5条记录。基于这些关系表,做如下查询:
(1)找出男性学生的姓名
(2)找出不是“2031”班的学生
GROUP BY , S.SNO;
(6)求选修了课程名为“数据库原理”的所有学生的学号和姓名
SELECT S.SNO,
FROM S INNER JOIN G ON S.SNO=G.SNO
WHERE (((O)="1"));
(7)找出学生代号为“S101”和“S102”两个学生都选修了的课程
相关文档
最新文档