https://www.myziyuan.com/
- 免注册用户
- 课程的重点、难点 1.数据库常用的基本概念,数据库系统的特点,数据库系统运行的过程,实体-联系模型(E-R图)的表示方法,实体-联系数据库模式的设计。 2.关系模型的基本概念,用关系代数和元组关系演算表达查询要求,用域关系演算式表达查询要求。3.用SQL语句定义基本表、建立索引,表达单表查询、连接查询,表达涉及查询结果排序、分组处理的查询,用SQL语句表达数据的更新,用SQL语句表达嵌套查询,定义视图、查询视图。4.用关系代数等价变换规则对查询表达式进行优化。5.1NF范式的概念;函数依赖、码和外码的概念;主属性、非主属性的概念;部分函数依赖和传递函数依赖的概念。多值函数依赖的概念。用规范化方法对关系模式进行分解,把一个关系模式分解成属于2NF、3NF、BCNF范式的几个模式的方法。属性集闭包的求解算法、关系码、最小函数依赖的求解方法。6.数据库设计的特点、方法和基本步骤,用数据流图和数据字典描述用户需求,概念结构设计和逻辑结构设计的方法,E-R图向关系模型的转换,数据库应用系统的设计。7.事务的基本概念和数据库系统故障的种类,数据库恢复的实现技术和数据库的恢复策略。8.并发操作可能带来的数据不一致现象,用三级封锁协议解决并发操作中的数据不一致问题,用两段锁协议保证并发操作的可串行化。9.计算机安全性的基本概念,几种数据库安全性控制技术。10.数据库的完整性的基本概念,数据库完整性控制机制的三方面功能。11.面向对象数据库的基本概念,对象关系数据库的基本概念,面向对象数据库与对象关系数据库的联系与区别。12.分布式数据库的基本概念,并行数据库的基本概念,多媒体数据库的基本概念,空间数据库的基本概念,网络数据库的基本概念,数据仓库的基本概念。
- 2022-01-09 16:39:20
- zaijianshaoshi
- (1)选择CNAME,教师来自课程,教师\u003d'LIU'(2)选择S#,SNAME表格学生,其中AGE\u003e 23(3)选择学生的SNAME,学习,学生的课程。s#\u003d学习.s #and学习.c#\u003d课程.c#和sex \u003d'女性'(4)从学习sc中选择c#,学生s如sname,如'wang%'和c#不在(选择c#从课程c)(5)选择s#froms其中2 \u003c\u003d(选择count(*)来自sc.s#\u003d ss#)第六nota(7)从sc中选择s#,其中c#中(选择c#fromc教师\u003d'liu%'的地方)
- 2022-01-09 16:38:11
- 网站模板素材下载
- 数据库系统原理课程设计,#include <string.h> #include <iostream.h> class Book{ // 书籍基类 protected: char Title[40]; // 书名 long Code; // 条码 int Type; // 0表示书,1表示杂志 public: Book(); Book(char *title,long code); void SetCode(long code){ Code = code; } void SetTitle(char* tl){ strcpy(Title,tl); } void SetType(bool type){Type = type; } int GetType(){ return Type; } long GetCode(){ return Code;} virtual void Show(); // 显示书的信息 friend ostream& operator<<(ostream& , Book&); // 重载插入运算符 friend istream& operator>>(istream& is, Book&); // 重载提取运算符 Book *Next; // 为创建每个读者所借书链表而定义指针 }; class Item :public Book{ //书的款目 // char Title[40]; // 书名 char Author[20]; // 著者名 char IndexCode[10]; // 分类号 // long Code; // 条码 public: Item(); Item(char *author,char *title,char *index,int code); Item(Item &); void SetAuthor(char*); void SetIndexCode(char*); virtual void Show(); // 显示书的信息 friend ostream& operator<<(ostream& os, Item&); // 重载插入运算符 friend istream& operator>>(istream& is, Item&); // 重载提取运算符 public: }; class Magazine:public Book { //杂志类 int Volume; enum LANG {CHINESE=1,ENGLISH} Lang; // 枚举变量,确定语言类别 public: Magazine():Book(){Volume = 0; Lang = CHINESE; Type = 1; } Magazine(char *title,int vol,LANG lang,int code); Magazine(Magazine&); void SetVolume(int vol){Volume = vol;} void SetLang(int lang){Lang = (LANG)lang;} virtual void Show(); // 显示杂志的信息 friend ostream& operator<<(ostream& os, Magazine&); // 重载插入运算符 friend istream& operator>>(istream& is, Magazine&); // 重载提取运算符 }; class Reader{ // 读者信息类 char Name[20]; // 姓名 char Position[20]; // 职务 int Age; // 年龄 long Code; // 借书证号 Book* items; // 所借书链表 public: Reader(); Reader(char *name,char *posi,int age,int code); // Reader(Reader&); ~Reader(); long GetCode(){return Code;} void SetName(char*); void SetPosition(char*); void SetAge(int); void SetCode(long); void AddBook(Item); // 添加所借书 void AddBook(Magazine); // 添加所借杂志 void DelBook(Book it); // 还书后减少所借书 void ShowBooks(); // 显示所借书 void Show(); // 显示读者信息 friend ostream& operator<<(ostream& os, Reader&); // 重载插入运算符 friend istream& operator>>(istream& is, Reader&); // 重载提取运算符 public: int Counter; //计数器,统计所借书数目 }; class Manager{ // 管理员类 char Name[20]; // 姓名 int Age; // 年龄 int Code; // 工号 friend class Library; // 将图书馆类声明为友元 public: Manager(){} Manager(char*,int,int); long GetCode(){ return Code;} void Show(); friend ostream& operator<<(ostream& os, Manager&); // 重载插入运算符 friend istream& operator>>(istream& is, Manager&); // 重载提取运算符 }; class Loan { // 借阅信息类 int Type; // 0表示书,1表示杂志 Item item; // 借阅书 Magazine mag; // 借阅杂志 Reader reader; // 借阅者 Manager manager; // 借书操作员 int Code; friend class Library; // 将图书馆类声明为友元 public: Loan(){ } Loan(Loan & l); int GetCode(){ return Code;} void Show(); friend ostream& operator<<(ostream& os, Loan&); // 重载插入运算符 friend istream& operator>>(istream& is, Loan&); // 重载提取运算符 }; 、、、、、、、、、、、、、、、、、、、、、、、 #include<iostream.h> #include<string.h> class Reader; template<typename T> class DblList; template<typename T> class DblNode{ public: T Info;//数据域 DblNode<T> *llink,*rlink; //前驱(左链)、后继(右链)指针 public: DblNode(T data);//一般结点 DblNode();//头结点 T GetInfo(){return Info;}; friend class DblList<T>; friend class Library; }; template<typename T>class DblList{ DblNode<T> *head,*current; public: DblList(); ~DblList(); void Insert(const T& data); DblNode<T>* Remove(DblNode<T>* p); void Print(); int Length();//计算链表长度 DblNode<T> *Find(T data);//搜索数据与定值相同的结点 DblNode<T>* Find(int data);//按某个关键字查找 void MakeEmpty(); //清空链表 void ShowList(); //显示链表各结点 friend istream& operator>>(istream&, DblList<typename T>&); // 重载输入流运算符 friend ostream& operator<<(ostream& os, DblList<typename T>& dlist); // 重载输出流运算符 friend class Library; //其它操作 }; template<typename T> DblNode<T>::DblNode(){ llink=rlink=NULL; } template<typename T> DblNode<T>::DblNode(T data){ info=data; llink=NULL; rlink=NULL; } template<typename T> DblList<T>::DblList(){//建立表头结点 head=new DblNode<T>(); head->rlink=head->llink=head; current=NULL; } template<typename T> DblList<T>::~DblList(){ MakeEmpty();//清空链表 delete head; } template<typename T> void DblList<T>::MakeEmpty(){ DblNode<T> *tempP; while(head->rlink!=head){ tempP=head->rlink; head->rlink=tempP->rlink;//把头结点后的第一个节点从链中脱离 tempP->rlink->llink=head;//处理左指针 delete tempP; //删除(释放)脱离下来的结点 } current=NULL; //current指针恢复 } template<typename T> void DblList<T>::Insert(const T & data){//新节点在链尾 current=new DblNode<T>; current->Info=data; current->rlink=head;//注意次序 current->llink=head->llink; head->llink->rlink=current; head->llink=current;//最后做 } template<typename T> DblNode<T>* DblList<T>::Remove(DblNode<T>* p){ // 删除结点 current=head->rlink; while(current!=head&¤t!=p) current=current->rlink; if(current==head) current=NULL; else{//结点摘下 p->llink->rlink=p->rlink; p->rlink->llink=p->llink; p->rlink=p->llink=NULL; } return current; } template<typename T> DblNode<T>* DblList<T>::Find(T data){ // 按结点查找 current=head->rlink; while(current!=head&¤t->Info!=data) current=current->rlink; if(current==head) current=NULL; return current; } template<typename T> DblNode<T>* DblList<T>::Find(int data){ // 按数据值查找结点 current=head->rlink; int temp =current->Info.GetCode(); while(current!=head&&temp!=data){ current=current->rlink; temp = current->Info.GetCode(); } if(current==head) current=NULL; return current; } template<typename T> void DblList<T>::Print(){ // 输出链表 current=head->rlink; while(current!=head){ cout<<current->Info<<'\t'; current=current->rlink; } cout<<endl; } template<typename T> int DblList<T>::Length(){ // 取得链表长度 int count=0; current=head->rlink; while(current!=head){ count++; current=current->rlink; } return count; } template<typename T> void DblList<T>::ShowList(){ // 输出链表各结点 int count=0; current=head->rlink; while(current!=head){ current->GetInfo().Show(); current=current->rlink; } return ; } template<typename T> istream& operator>>(istream& is, DblList<typename T> &dlist){ int len; T tt; // 定义局部变量读入一个结点 is>>len; for(int i= 0 ;i<len; i++){ // 循环读入链表各结点 is>>tt; dlist.Insert(tt); } return is; } template<typename T> ostream& operator<<(ostream& os, DblList<typename T> &dlist){ DblNode<T> *tempP; int len = dlist.Length(); os<<len<<' '; tempP=dlist.head->rlink; while(tempP!=dlist.head){ // 循环输出链表各结点 os<<tempP->Info; tempP = tempP->rlink; } return os; } #include "class.h" #include "dblist.h" #include <fstream.h> class Library{ // 封装图书馆流通业务的类 DblList<Item> item; // 在馆图书链表 DblList<Magazine> mag; // 在馆杂志链表 DblList<Reader> reader; // 读者链表 DblList<Loan> loan; // 借阅信息链表 DblList<Manager> manager; // 管理员信息链表 int itemNum; // 记录在馆图书数目 int magNum; // 记录在馆杂志数目 int readerNum; // 记录读者数目 int loanNum; // 记录借阅信息数目 int managerNum; // 记录管理员数目 ofstream itemFileOut; // 文件流对象,保存图书馆书籍数据 ifstream itemFileIn; // 文件流对象,读入图书馆书籍数据 ofstream magFileOut; // 文件流对象,保存图书馆杂志数据 ifstream magFileIn; // 文件流对象,读入图书馆杂志数据 ofstream readerFileOut; // 文件流对象,保存图书馆读者数据 ifstream readerFileIn; // 文件流对象,读入图书馆读者数据 ofstream loanFileOut; // 文件流对象,保存图书馆借阅信息数据 ifstream loanFileIn; // 文件流对象,读入图书馆借阅信息 ofstream managerFileOut; // 文件流对象,保存图书馆管理员数据 ifstream managerFileIn; // 文件流对象,读入图书馆管理员数据 public: Library(); // 构造函数 ~Library(); //析构函数 void Run(); // 图书馆类的运行函数 void CreateBibliotheca(); // 创建书目 void CreateReader(); // 创建读者库 void CreateManager(); // 创建管理员信息 int ShowMainMenu(); // 显示主菜单函数 void Borrow(); // 借书操作 void Return(); // 还书操作 void Require(); // 查询操作 void SaveInfo(); // 保存图书馆信息 void OpenInfo(); // 读入图书馆信息 };
- 2022-01-09 16:38:11