文档库 最新最全的文档下载
当前位置:文档库 › 数据查询与表的创建作业

数据查询与表的创建作业

数据查询与表的创建作业
数据查询与表的创建作业

图1

用两种方法建立一个新数据库HRM(也可任意取名),如上图所示(图1);

鼠标右击数据库HRM- 数据查询,然后输入如下SQLServer语句: DepartmentID CHAR(3)NOT NULL PRIMARY KEY,

DepartmentName CHAR(20)NOT NULL,

Note TEXT)

CREATE TABLE Employee

(

EmployeeID CHAR(6)NOT NULL PRIMARY KEY,

NAME CHAR(10)NOT NULL,

Birthday Datetime NOT NULL,

SEX char(2)NOT NULL,

Address CHAR(20),

Zip CHAR(6),

PhoneNumber CHAR(12),

EmailAddress CHAR(30),

DepartmentID CHAR(3)NOT NULL REFERENCES Departments(DepartmentID)ON DELETE NO ACTION

)

CREATE TABLE Salary

(EmployeeID CHAR(6)NOT NULL REFERENCES Employee(EmployeeID)ON DELETE NO ACTION,

Income FLOAT(8)NOT NULL,

OutCome FLOAT(8)NOT NULL

)

在数据库HRM中,建立如下所示的三个表:

Employee表, Departments表, Salary表

对上节建立的表输入数据:

Departments表:

Employee表

Salary表如下图:

练习下面简单的查询语句:

a)查询每个雇员的所有信息:输入语句

select*from Employee

b) 查询每个雇员的地址和电话

SELECT PhoneNumber,Address from Employee

c) 查询EmployeeID为000001的雇员的地址和电话

SELECT PhoneNumber,Address from Employee

where EmployeeID=1001

d) 查询女雇员地址和电话,并用AS子句将结果中各列的标题分别指定为“地址”和“电话”。

SELECT电话=PhoneNumber,地址=Address from Employee where SEX=0

Excel工作表的建立和编辑等基本操作

E x c e l工作表的建立和编辑 等基本操作 -标准化文件发布号:(9556-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

Excel工作表的建立和编辑等基本操作(2课时) 教学目的: 学习excel的使用,初步了解工作表的建立和编辑操作。 教学重点: 工作表的数据输入(包括不同文本、数值、日期等类型,有规律数据的输入,公式的编辑),工作表的格式设置(包括字体、对齐、边框和图案的设置)。 教学难点: 电子表格自动填充和公式编辑、函数应用。 上机任务 2

任务一:建立一个成绩表并简单设置格式 1、运行Excel,创建一个工作簿文件,文件命名为“学生成绩.xls”; 2、在sheet1中输入如下图所示的数据。注意,学号采用自动填充的功能快速输入; 3

3、在第1行上面插入一行,在A1单元格中输入标题“2009级学生入学成绩表”,将A1到I1单元格合并居中,设置标题为黑体、16号字、红色,单元格背景色为浅黄色; 4

4、在学号为“20080008”的记录前插入一行,任意输入数据。 5、删除学号为“20080006”的那一行。 6、将所有学号中的“2008”改为“2009”。 7、运用函数或公式计算出每个学生的“总分、平均分”,填入相应的单元格中。 8、分别在A11和A12单元格输入“最高分”、“最低分”,求出所有学生中各门课程的最高分和最低分,填入相应的单元格中。 9、设置表中各单元格水平居中对齐、垂直居中对齐。 10、设置第1行的行高为30,其余各行行高为16;列宽为“最适合的列宽”。 11、设置平均分列中的数值格式为保留2位小数位数。 5

实验三数据表的创建与管理

实验三数据表的创建与管理 一、实验题目 数据表的创建与管理 二、实验目的 要求学生熟练掌握使用SQL Server Management Studio和利用T-SQL语句进行数据表的创建和删除,并对数据表和表中的数据进行有效的管理。 三、实验内容 1、使用SQL Server Management Studio创建和删除数据表、修改表结构、更新数据。 2、使用T-SQL语句创建和删除数据表、修改表结构、更新数据。 四、实验项目 (一)表的创建 1、使用SQL Server Management Studio创建表 实验3.1在JXGL数据库中,使用SQL Server Management Studio建立S、C和SC三个表,其结构如下3-1~3-3所示。 表3-1 学生表S的结构

表3-3 选课表SC的结构 步骤如下: ①在“对象资源管理器”中单击“JXGL”前面的“+”号,选择“表”并右键单击,在弹出的快捷菜单中选择“新建表”命令,打开设计表字段对话框,如图3-1所示。 图3-1 设计表字段对话框 ②在设计表对话框中分别输入“列名”、“数据类型”和“允许NUll值”3个参数的值。 ③设计完表的字段后,单击“保存”按钮,弹出保存对话框,如图3-2所示,在输入表名称中更改表名;或者单击“关闭”按钮,弹出是否要保存更改的提示对话框,如图3-3所

示。 图3-2 保存对话框 图3-3 是否要保存更改的提示对话框 1、使用T-SQL语句创建数据库 实验3.2在学生管理数据库EDUC中,利用T-SQL语句创建数据表。表结构如下表3-4~3-10所示。 表3-4学生信息表Student_info的结构

《数据查询与操作》实验答案

《数据查询与操作》实验 一、实验目的与要求 1、理解简单查询和复合查询的意义。 2、掌握SELECT语句和各子句的使用。 3、掌握多表查询和子查询的使用。 4、掌握INSERT、UPDATE和DELETE语句的使用。 二、实验平台 1、操作系统:Windows XP或Windows 2003 2、数据库管理系统:SQL Server 2005 三、实验内容 1.在“人事管理系统”中,新增一个员工信息(员工编号…100508?、员 工姓名…小龙女?、所在部门编号…10001?、籍贯…河南?)。 USE人事管理系统 GO insert into员工信息(籍贯,所在部门编号,员工姓名,员工编号) values('河北','10001','小龙女','100508 ') GO 2.将“人事管理系统”数据库的“员工信息”表中籍贯为“河南”并且所 在部门编号为”10001”数据插入到“新员工信息”表中。 USE人事管理系统 GO insert into新员工信息(员工编号,员工姓名,所在部门编号) select员工编号,员工姓名,所在部门编号 from员工信息 where所在部门编号='10001'and籍贯='河南' GO 3.在“人事管理系统”数据库“部门信息”表中,将部门的员工人数设 置为10。

GO update部门信息set员工人数=10 GO 4.在“人事管理系统”数据库“员工信息”表中,将文化程度为“大专”, 并且在“2005-05-01”到“2007-05-01”之间入职的所有员工调动到编号为“10006”的部门去。 USE人事管理系统 GO update员工信息 set所在部门编号=10006 where入职时间between'2005-05-01'and'2007-05-01' and文化程度='大专' GO 5.在“人事管理系统”数据库中对部门进行了重组和调整,原来编号 为10006的部门名称变为“市场开发部”,人数也调整为20人。 USE人事管理系统 GO update部门信息 set部门名称='市场开发部',员工人数=20 where部门编号=10006 GO 6.在“人事管理系统”数据库中,编号为“100503”的新员工升级为正 式员工,需要在“新员工信息”表中删除他的记录。 USE人事管理系统 GO delete from新员工信息where员工编号=100503 GO 7.在“人事管理系统”数据库中,删除“新员工信息”表中所有在编号 为“10005”部门工作的员工记录。 USE人事管理系统 GO delete from新员工信息where所在部门编号=10001 GO 8.在“人事管理系统”数据库中,需要删除5%的员工信息。

数据结构_实验1_线性表的基本操作

实验1 线性表的基本操作 一、需求分析 目的: 掌握线性表运算与存储概念,并对线性表进行基本操作。 1.初始化线性表; 2.向链表中特定位置插入数据; 3.删除链表中特定的数据; 4.查找链表中的容; 5.销毁单链表释放空间; 二、概要设计 ●基础题 主要函数: 初始化线性表InitList(List* L,int ms) 向顺序表指定位置插入元素InsertList(List* L,int item,int rc)删除指定元素值的顺序表记录DeleteList1(List* L,int item) 删除指定位置的顺序表记录 DeleteList2(List* L,int rc) 查找顺序表中的元素 FindList(List L,int item) 输出顺序表元素OutputList(List L) 实验步骤: 1,初始化顺序表 2,调用插入函数 3,在顺序表中查找指定的元素 4,在顺序表中删除指定的元素 5,在顺序表中删除指定位置的元素 6,遍历并输出顺序表 ●提高题

要求以较高的效率实现删除线性表中元素值在x到y(x和y自定义)之间的所有元素 方法: 按顺序取出元素并与x、y比较,若小于x且大于y,则存进新表中。 编程实现将两个有序的线性表进行合并,要求同样的数据元素只出现一次。 方法: 分别按顺序取出L1,L2的元素并进行比较,若相等则将L1元素放进L中,否则将L 1,L2元素按顺序放进L。 本程序主要包含7个函数 主函数main() 初始化线性表InitList(List* L,int ms) 向顺序表指定位置插入元素InsertList(List* L,int item,int rc)删除指定元素值的顺序表记录DeleteList1(List* L,int item) 删除指定位置的顺序表记录 DeleteList2(List* L,int rc) 查找顺序表中的元素 FindList(List L,int item) 输出顺序表元素OutputList(List L) 提高题的程序 void Combine(List* L1,List* L2,List* L) void DeleteList3(List* L,int x,int y) 二、详细设计 初始化线性表InitList(List* L,int ms) void InitList(List* L,int ms) { L->list=(int*)malloc(LIST_INIT_SIZE*sizeof(int)); L->size=0; L->MAXSIZE=LIST_INIT_SIZE;

创建数据库和表

数学与信息技术学院实验报告 实验课程名称:SQL语言基础实验 实验项目名称:实验二创建数据库和表 专业班级: 学号: 姓名: 指导教师:

实验一创建数据库和表 【实验目的】 (1)了解MySQL数据库的存储引擎的分类; (2)了解表的结构特点; (3)了解MySQL的基本数据类型; (4)了解空值概念; (5)学会使用SQL界面工具中创建数据库和表; (6)学会使用SQL语句创建数据库和表。 【实验容及步骤】 一,实验容 实验题目 创建用于企业管理的员工管理数据库,数据库名为YGGL,包含员工的信息、部门信息及员工的薪水信息。数据库YGGL包含下列3个表: (1)Employees:员工信息表: (2)Departments:部门信息表: (3)Salary:员工薪水情况表。 二,实验步骤 1,使用命令行为方式创建数据库YGGL

打开MySQL Command Line Client,输入管理员密码登录,使用CREATE语句创建YGGL数据库: Creat database YGGL; 2,使用SQL语句在YGGL数据库中创建表Employees 执行创建表employees的SQL语句: 用同样的方法在数据库YGGL中创建表Salary。 创建一个结构与employees表结构相同的空表Employees(): Creat table Employees0LIKE Employees; 3,使用SQL语句删除表和数据库 删除表employees: Drop table employees; 删除数据库YGGL Drop database YGGL;

数据结构实现顺序表的各种基本运算(20210215233821)

实现顺序表的各种基本运算 一、实验目的 了解顺序表的结构特点及有关概念,掌握顺序表的各种基本操作算法思想及其实现。 二、实验内容 编写一个程序,实现顺序表的各种基本运算: 1、初始化顺序表; 2 、顺序表的插入; 3、顺序表的输出; 4 、求顺序表的长度 5 、判断顺序表是否为空; 6 、输出顺序表的第i位置的个元素; 7 、在顺序表中查找一个给定元素在表中的位置; 8、顺序表的删除; 9 、释放顺序表 三、算法思想与算法描述简图

主函数main

四、实验步骤与算法实现 #in clude #in clude #defi ne MaxSize 50 typedef char ElemType; typedef struct {ElemType data[MaxSize]; in t le ngth; void In itList(SqList*&L)〃 初始化顺序表 L {L=(SqList*)malloc(sizeof(SqList)); L->le ngth=0; for(i=0;ile ngth;i++) prin tf("%c ",L->data[i]); } void DestroyList(SqList*&L)〃 {free(L); } int ListEmpty(SqList*L)〃 {retur n( L->le ngth==O); } int Listle ngth(SqList*L)〃 {return(L->le ngth); } void DispList(SqList*L)〃 {int i; 释放顺序表 L

BCB讲座第十五讲简单数据库查询操作.

简单数据库查询操作 上一讲我们学习了数据库编程的基础知识,并对 MP3Collect 进行了一番改造,使其具有数据库访问能力。在本讲中,我们首先设置三个数据库元件 Query1、DataSource1和 DBGrid1的属性,接下来学习如何通过 Query 控件实现简单的数据库查询操作。 设置控件属性 Query1控件的用途是查询数据库,获取可以显示在窗体中的数据。 Query 控件和 Table 控件一样,它们都是从 VCL 类 TDataSet (数据集元件中继承来的,都代表数据库中一组记录的集合。不同的是, Table 控件代表库中实际存在的一个数据表对象, 而 Query 控件则代表一次查询的结果。 Query 控件支持通过 SQL 进行查询,因此比 Table 控件具有更大的灵活性,它可以同时访问多个数据表, 可以灵活访问数据表中的行和列,可以实现十分复杂的条件查询。 SQL 的全称是结构化查询语言,它是一种标准的数据库查询语言,具有自己的关键字(SQL 中的关键字是不分大小写的, SELECT 和 Select 的作用是相同的和语法,典型的 SQL 查询语句如下所示: SELECT [字段名 ] FROM [数据表名 ] WHERE [条件子句 ] 其中 SELECT 、 FROM 和 WHERE 都是 SQL 的关键字。 SELECT 代表查询操作, “字段名”表示返回的记录集中所包含的字段,字段名可以使用通配符 *,表示查询的数据表中的所有字段, “数据表名”表示在哪个数据表中进行查询, “条件子句”为查询的条件。 了解了 SQL 的基本语法后, 下面我们来设置 Query1控件的 SQL 属性。在对象监视器中双击 Query1控件的 SQL 属性(该属性为 TStrings*类型 ,打开字符串列表编辑器,在其中输入这样两句“ Select * From MP3Info”和“ Order by FileName ASC”。注意第二句要另起一行,这样在后面的编程中可以很方便地改变记录的排序方式。这两句合在一起的意思是获取 MP3Info 数据表中的所有记录,并以 FileName 字段为基

顺序表的建立及其基本操作技巧

山东师范大学 实验报告 课程:数据结构班级:2016级通信2班实验序号: 1 姓名:韩明达 学号: 201611030230 实验日期:9.17 题目: 顺序表的建立和运算 一、实验目的和要求 (1)熟悉C语言的上机环境,进一步掌握C语言的结构特点。 (2)掌握线性表的顺序存储结构的定义及基本运算 二、实验环境 Windows10,Visual Studio 2017 三、实验内容及实施 实验内容 1、建立一个顺序表,输入n个元素并输出; 2、查找线性表中的最大元素并输出; 3、在线性表的第i个元素前插入一个正整数x; 4、删除线性表中的第j个元素; 5、将线性表中的元素按升序排列; 【程序流程图】

【程序】 #include #include using namespace std; #define MAXSIZE 100 #define OK 1 #define ERROR 0 #define OVERFLOW -2 typedef struct { //定义顺序表结构 int data[MAXSIZE]; //存储空间的基地址; int length; //当前表长 }SqList; int InitList(SqList &L) //初始化顺序表 { L.length = 0; //当前长度为0 return OK; } void ShowList(SqList &L) //显示顺序表 { cout << "您构建的顺序表为:" << endl; //提示int i; for (i = 0; i < L.length; i++) { cout << L.data[i] << " ";

数据库及数据库表的创建与管理

《数据库技术》上机实验 实验三数据库及数据库表的创建与管理 一、实验目的 熟悉和掌握数据库的创建和连接方法; 熟悉和掌握数据表的建立、修改和删除; 加深对表的实体完整性、参照完整性和用户自定义完整性的理解。 二、实验软件平台 Windows XP/7/8/10操作系统; 安装了SQL SERVER 三、实验内容 背景材料:在以下实验中,使用学生-课程数据库(school),它描述了学生的基本信息、课程的基本信息及学生选修课程的基本信息。(要求使用命令的方式创建) 1.创建学生-课程数据库create database school Sno:char(9) Sname: varchar(6) Ssex:char(2) Sage:tinyint Sdept:char(2) Sno为主键,姓名不能为空,性别只能取男或女,年龄大于等于0。 Cno为主键,课程名不能为空,先行课可以为空,学分大于等于0 Sno:char(9) Cno:varchar(3) grade: float 主键是课程号和学号思考?成绩可以为空么?为什么? 5.将以上创建表S、C、SC的SQL命令以.SQL文件的形式保存在磁盘上。[文件操作的方 式直接保存即可,这部分不用写在“四实验结果”中] 温馨提示:到这部分内容做完为止,可以用数据库的备份功能将所建好的数据库及数据库表完全备份下来,下周的实验课程会利用这个表结构。或者直接保存题5的SQL语句也可以,下次课直接执行这些sql文件,也可以达到保存的目的。 6.在表S上增加“出生日期”属性列。 7.删除表S的“年龄”属性列。 8.删除表SC,利用磁盘上保存的.SQL文件重新创建表SC。 9.修改C表,将学分的约束改为0到5之间 10.修改S表的性别的类型,设置为char(1),并将约束改为0和1

Excel工作表的建立和编辑等基本操作

Excel工作表的建立和编辑等基本操作(2课时) 教学目的: 学习excel的使用,初步了解工作表的建立和编辑操作。 教学重点: 工作表的数据输入(包括不同文本、数值、日期等类型,有规律数据的输入,公式的编辑),工作表的格式设置(包括字体、对齐、边框和图案的设置)。 教学难点: 电子表格自动填充和公式编辑、函数应用。 上机任务 1

任务一:建立一个成绩表并简单设置格式 1、运行Excel,创建一个工作簿文件,文件命名为“学生成绩.xls”; 2、在sheet1中输入如下图所示的数据。注意,学号采用自动填充的功能快速输入;2

3、在第1行上面插入一行,在A1单元格中输入标题“2009级学生入学成绩表”,将A1到I1单元格合并居中,设置标题为黑体、16号字、红色,单元格背景色为浅黄色; 4、在学号为“20080008”的记录前插入一行,任意输入数据。 3

5、删除学号为“20080006”的那一行。 6、将所有学号中的“2008”改为“2009”。 7、运用函数或公式计算出每个学生的“总分、平均分”,填入相应的单元格中。 8、分别在A11和A12单元格输入“最高分”、“最低分”,求出所有学生中各门课程的最高分和最低分,填入相应的单元格中。 9、设置表中各单元格水平居中对齐、垂直居中对齐。 10、设置第1行的行高为30,其余各行行高为16;列宽为“最适合的列宽”。 11、设置平均分列中的数值格式为保留2位小数位数。 12、为该表增加表格线(不包括标题行),内网格线为最细的实线,粉红色;外框线为最粗的实线,橙色。 4

13、将第2行的所有字符的字体设置为楷体、加粗,字号为14,颜色设置为红色,填充背景色为青绿色。 14、对“张三”插入批注,批注为“该生已转专业。” 15、把sheet1命名为“入学成绩表”; 16、保存文件并提交作业。 参考效果图如下: 5

实验一创建数据库及表的创建与管理

实验1创建数据库及表的创建与管理 一、实验目的与要求 1、掌握使用T-SQL语句创建数据库、数据表和`数据表完整性约束的定义。 2、熟悉表的结构和列所使用的数据类型。 3、理解数据表完整性含义及其定义的方法。 二、实验平台 1、操作系统:Windows XP或Windows 2003 2、数据库管理系统:SQL Server 2005 三、实验内容 (一)数据库创建与管理 创建一个“教务管理系统”数据库,并将下列表创建在该数据库中(二)在“教务管理系统”数据库钟实现表的创建与完整性定义StudentInfo(学生信息表) TeacherInfo(教师信息表)

CourseInfo(课程信息表) StudentCourse(学生选课表)

Teaching(教学表) RankPayment(职称课酬表) 1、使用T-SQL语句创建以上数据表。同时定义主键约束:StudentInfo表主键Sno;TeacherInfo表主键Tno;CourseInfo表主键Cno;RankPayment表主键Trank。 2、使用T-SQL语句定义以上数据表的其他约束 ①对StudentInfo表的Sname进行唯一性约束(unique约束),约束名称为S1。 ②对CourseInfo表的Cname进行唯一性约束(unique约束)。 ③对StudentCourse表定义外键约束:Sno引用StudentInfo表中的Sno,Cno 引用CourseInfo表中的Cno。 ④对TeacherInfo表定义外键约束:Trank引用RankPayment表中的Trank。 ⑤对Teaching表定义外键约束:Tno引用TeacherInfo表中的Tno,Cno引用CourseInfo表中的Cno。 ⑥对StudentCourse表的Score进行CHECK约束:Score必须在0至100之间。

顺序表的基本操作

《数据结构》实验报告一 顺序表的基本操作 班级:网络工程学号:12015242183 实验日期:2016.9.25 姓名:邓宗永 程序文件名及说明:sequenlist 顺序表 一、实验目的 1、掌握使用Turbo C3.0上机调试线性表的基本方法; 2、掌握顺序表的基本操作:插入、删除、查找以及线性表合并等运算。 二、实验要求 1、认真阅读和掌握实验的程序。 2、上机运行程序。 3、保存和打印出程序的运行结果,并结合程序进行分析。 4、按照你对线性表的操作需要,编写写主程序并运行,打印出文件清单和运行结果 三、注意事项: 在磁盘上创建一个目录,专门用于存储数据结构实验的程序。 四、实验内容 1.顺序表的查找、插入与删除。设计算法,实现线性结构上的顺序表的产生以及元素的查找、插入与删除。具体实现要求: (1)从键盘输入10个整数,产生顺序表,并输入结点值。 (2)从键盘输入1个整数,在顺序表中查找该结点的位置。若找到,输出结点的位置;若找不到,则显示“找不到”。 (3)从键盘输入2个整数,一个表示欲插入的位置i,另一个表示欲插入的数值x,将x 插入在对应位置上,输出顺序表所有结点值,观察输出结果。 (4)从键盘输入1个整数,表示欲删除结点的位置,输出顺序表所有结点值,观察输出结果。 五、实验报告必须写明内容 1.程序设计的基本思想,原理和算法描述:(包括程序的结构,数据结构,输入/输出设 计,符号名说明等) 程序的结构:通过子函数实现输出,删除,插入,查找等功能,高耦合低内聚 数据结构:线性结构,顺序储存 输入/输出设计:根据屏幕提示,从键盘读取数据 2.源程序及注释: #include #include typedef int datatype; #define maxsize 10 typedef struct //创建一个顺序表包含10个整数

数据库操作及查询

第三章数据库操作及查询§1刨建数据库表 一、表的分类:库表、自由表。 二、数据库表与自由表的区别 库表:各个表之间有关联 特点:A:长表名和长字段名。 B:每个字可以有提示和注释。 C:可以定义缺省值。 D:字段级的规则和记录级的规则。 自由表: foxbase 表,独立 三、表结构的定义 操作方法:A:表设计器 B:命令create < 表名> 四、表记录的输入 1、追加方式 2、定义结构时同时输入

五、表记录添加 1)、键盘输入 2)、从已有文件中追加 A、INSERT –SQL 命令 命令格式: INSERT INTO 表名[(字段名1[,字段名2,…])] V ALUES(表达式1[,表达式2,…]) 功能:在表尾追加一个新记录,并直接输入记录数据。 说明:表不必事先打开,字段与表达式的类型必须相同。 例如:INSERT INTO TEACHER(BH,XM,XB,JBGZ)V ALUES (“02005”,“张华”,“女”,2021) B、APPEND 命令 格式:APPEND [BLANK] 功能:向表中追加记录 说明:使用BLANK子句能在表尾追加一条空记录。若不选取则进入全屏幕编缉方式。 C、APEND FROM 命令

格式:APPEND FROM <文件名> FIELDS <字段名表> [FOR< 条件>][[TYPE ] DELIMITED[WITH <定界符>/WITH BLANK/WITH TAB]/SDF/XLS]] 功能:在当前的表尾部追加一批记录,这些记录来自于指定的文件。 说明:1、源文件的类型可以为表、系统数据格式文件、定界格文本文件、Excel文件。 2、执行该文件时源表不用打开。 例如:先将表数据导入到EXCEL表中,然后再追加到空表中。 appe from tyty type xls 六、表的打开和关闭 1、表的打开 A: 命令 use B: “文件”——“打开” C:在窗口菜单的“数据工作”期命令来打开 2)、表的关闭 A、命令:

实验三-数据表的创建与管理

实验三数据表的创建与管理 一、实验目的 要求学生熟练掌握SQL server Management Studio的使用和利用T-SQL语句进行数据表的创建和删除,并对数据表和表中数据进行有效的管理。 二、实验内容 分别使用SQL Server Management Studio和T-SQL语句创建和删除数据表,修改表结构,输入数据、更新数据。 三、实验指导 1. 数据表定义 实验3.1在“JXGL”数据库中,使用SQL Server Management Studio建立S、C和SC 三个表,其结构如表 表1.3.1 学生表S结构 列名描述数据类型允许空值说明 sno 学号char(8) NO 主键 sname 姓名char(8) NO age 年龄Smallint YES sex 性别char(2) YES sdept 所在系Varchar(50) YES 表1.3.2 课程表C结构 列描述数据类型允许空值说明 cno 课程号char(4) NO 主键 cname 课程名char(20) NO credit 学分Float YES pcno 先修课char(4) YES describe 课程描述varchar(100) YES 表1.3.3 选课表SC结构 列描述数据类型允许空值说明 sno 学号char(8) NO 主键(同时都是外键)cno 课程号char(4) NO grade 成绩Float YES 具体步骤如下: (1)在SQL Server Management Studio的对象管理器中,单击数据库前面的“+”号,选择“表”并击右键,在弹出的快捷菜单中选择“新建表”菜单项,则进入设计表字段对话框,

顺序表的基本操作 (2)

顺序表的基本操作 /*sqList.h 文件*/ #define LIST_INIT_SIZE 50 /*初始分配的顺序表长度*/ #define INCREM 10 /*溢出时,顺序表长度的增量*/ #define OVERFLOW 1 #define OK 0 #define ERROR -1 typedef int ElemType; /*定义表元素的类型*/ typedef struct SqList{ ElemType *elem; /*存储空间的基地址*/ int length; /*顺序表的当前长度*/ int listsize; /*当前分配的存储空间*/ }SqList; /*sqListOp.h 文件*/ #include "Sqlist.h" int InitList_sq(SqList &L); //顺序表创建函数定义 void FreeList_sq(SqList &L); //顺序表销毁函数定义 int ListInsert_sq(SqList &L, int i, ElemType e); //在顺序表的位置i插入元素e void PrintList_sq(SqList &L); //遍历并输出顺序表所有元素 int ListDelete_sq(SqList &L, int i,ElemType &e); //删除顺序表第i个元素的 bool ListEmpty(SqList &L); //判断顺序表是否为空 int LocateElem_sq(SqList L,ElemType e); //在顺序表里查找出第1个与e相等的数据元素位置//已知线性表La和Lb的元素按值非递减排列 //归并后的La和Lb得到新的顺序线性表Lc,Lc的元素也是按值非递减排列 void MergeList_sq(SqList La,SqList Lb, SqList &Lc); /*sqListOp.cpp文件*/ #include #include #include #include "sqlistOp.h" //创建顺序表 int InitList_sq(SqList &L) { L.elem = (ElemType*)malloc(LIST_INIT_SIZE*sizeof(ElemType)); if (!L.elem) exit(OVERFLOW); /*初始化失败,返回0*/ L.length = 0; /*置空表长度为0*/ L.listsize = LIST_INIT_SIZE; /*置初始空间容量*/ return OK; /*初始化成功,返回1*/

实验二通过sql语句创建与管理数据表

实验二通过SQL语句创建与管理数据表 实验目的 (1)掌握查询分析器的使用。 (2)掌握通过SQL语句创建表的方法。 (3)掌握通过SQL语句修改表结构的方法。 (4)掌握通过SQL语句添加、修改、删除表数据的方法。 实验内容 1.通过SQL语句删除表 用SQL语句在数据库Student_info中删除实验一创建的Student表、Course表、SC表。 2.通过SQL语句创建表 用SQL语句在数据库Student_info中创建实验一中的Student表、Course表、SC表,表结构如实验一中表、表、表所示。 3.通过SQL语句管理表结构 (1)添加和删除列 a.给Student表增加身高(以米单位)stature列,类型为numeric(4,2),允许为空值,且身高值需小于3.0米。

b.给Student表增加所在系Sdept列,字符型,长度2,不允许为空值。 c.给Student表增加邮政编码Postcode列,字符型,长度为6,可以为空,若不为空时,则要求其值只能出现数字,不能是其他字符。 d.删除Student表中身高stature列。 (2)添加和删除约束 a.在Student表添加约束:入学时间必须在出生年月之后。

b.给SC表的成绩grade列增加默认值约束,默认值为0。 c.删除grade列的默认值约束。 4.通过SQL语句添加、修改、删除表中数据 (1)插入数据 a.Student表、Course表、SC表的记录见实验一的表、表、表,其他数据可自行添加。要求Student表和SC表中数据包括了每位同学自己的学号。

b.执行如下语句:insert into student(sno,sname,sex)values('','赵青','男'),该语句能成功执行吗为什么 不能。因为在into中没有出现属性列,新纪录在这些列上将去空值。但在表定义时说明的not null的属性列不能去空值,否则将会出错。 c.执行如下语句:insert into sc values('','005',80),该语句能成功执行吗为什么不能。在Course表中没有‘005’这个号,所以在SC中插入‘005’会报错。 (2)修改数据 a.使用T-SQL语句,将Course表中的课程号为'002'的学分改为4,总学时改为64。

顺序表的实现

数据结构实验顺序表的实现 姓名 学号 专业班级

实验名称:顺序表的实现 一.实验目的: 1.掌握线性表的顺序存储结构; 2.验证顺序表的基本操作的实现; 3.理解算法与程序的关系,能够将顺序表转换为对应程序; 二.实验内容: 1.建立含有若干元素的顺序表; 2.对已建立的顺序表实现插入、删除、查找等基本操作; 三.算法设计 1.建立顺序表并初始化 1)顺序表的大小为MaxSize,存入元素的下标为n a.如果n>MaxSize,则抛出参数非法; b.将元素a[i]赋值给线性表中元素序号为i的元素; 2.顺序表的插入 1)如果表满了,则抛出上溢异常; 2)如果元素插入的位置不合理,则抛出位置异常; 3)将最后一个元素及第i个元素分别向后移动一个位置; 4)将要插入的元素x填入为位置i处; 5)表长加1; 3.顺序表的删除 1)如果表空,则抛出下一异常;

2)如果删除的位置不合理,则抛出删除位置异常; 3)取出被删元素; 4)将下表为i至n-1的元素分别向前移动1个元素; 5)表长减一,返回被删元素值; 4.顺序表的查找 A.按位查找 1)如果查找的位置不合理,则抛出查找的不合理; 2)返回被查找的元素值; B.按值查找 1)若查找成功,返回被查找元素的序号; 2)若查找失败,则返回0; 四.部分代码 文件名称:SeqList.h #define SEQLIST_H const int MaxSize = 5; template class SeqList{ publi#ifndef SEQLIST_H c: SeqList(); //默认构造函数 SeqList(T a[],int n); //数组a传递数据元素信息,n表示元素个数 ~SeqList(); //析构函数 int Length(); //返回顺序表的长度 void Insert(int i,T x);//在第i个位置插入数据元素x T Get(int i); //得到第i个位置上的数据元素 T Delete(int i); //删除第i个位置上的数据元素 int Locate(T x); //在顺序表中查找数据元素x,并返回它的位置,否则返回0. void PrintList(); //打印顺序表中的数据元素信息。 private: T data[MaxSize]; //数组data用来存放顺序表的数据元素 int length; //length表示顺序表中数据元素的个数 };

实验2-数据查询的简单操作

实验2数据库的简单查询 一、实验目的 掌握单表查询中各个子句(Select、From、Where、Group、Having、Order)的用法,特别要掌握比较运算符和逻辑运算符的使用。 二、实验环境 Windows XP操作系统,SQL Server 2005软件。 三、实验课时 2课时。 四、实验内容 在已建立的数据库和数据表的基础上,用Select语句完成下列查询操作。 1、查询全体学生的学号和姓名。 SELECT sno,sname FROM student; 2、查询全体学生的所有基本信息(仅针对Student表)。 SELECT* FROM student; 3、对SC表查询全体学生的选课记录,在显示结果中为“Grade”列增加5分。SELECT sno,cno,grade=grade+5 FROM sc; 4、查询全体学生的学号和姓名,将原来的英文列名设置中文别名。 SELECT sno AS学号,sname AS姓名 FROM student; 5、显示所有选课学生的学号,去掉重复结果。 SELECT DISTINCT sno FROM sc; 6、查询成绩在80分以上的学生选课记录。 SELECT* FROM sc WHERE grade>80;

7、查询经济系所有学生的学号和姓名。 SELECT sno,sname FROM student WHERE sdept='经济'; 8、查询成绩在80~90分的学生选课记录。 SELECT* FROM sc WHERE grade BETWEEN 80 AND 90; 9、查询年龄不在22~25的学生记录。 SELECT* FROM student WHERE sage NOT BETWEEN 22 AND 25; 10、查询所有姓“刘”的学生记录。 SELECT* FROM student WHERE sname LIKE'刘%'; 11、查询无考试成绩(成绩为空值)的学号、课程号。SELECT sno,cno FROM sc WHERE grade IS NULL; 12、查询考试成绩非空值的学号、课程号。 SELECT sno,cno FROM sc WHERE grade IS NOT NULL; 13、查询数学系年龄小于20岁的学生记录。 SELECT* FROM student WHERE sdept='数学'AND sage<20; 14、查询选修了“101”或“102”课程的选课记录。SELECT* FROM sc WHERE cno in('101','102');

数据库与表的创建和使用

数据库与表的创建和使用 一、常用字段类型 1、字符型 2、数值型 3、日期型 4、逻辑型(T是,F否) 5、备注型 二、项目管理器 项目管理器是VFP中处理数据和对象的主要工具。项目管理器是系统的“控制中心”。一个项目是文件、数据、文档、对象的集合,项目文件以扩展名*.pjx保存。 创建一个项目文件的方法 1、CREATE PROJECT 项目文件名或? 2、文件—新建 3、工具栏“新建”按钮 二、数据库与表的概念 在VFP中有两种表:一种是自由表,它独立于任何数据库;一种是数据库表,它是数据库的一部分。 数据库和表是两个不同的概念。表是处理数据、建立关系数据库的应用程序的基础单元,它用于存储收集来的各种信息。而数据库是表的集合,它控制这些表协同工作,共同完成特定任务。 本节重点:数据库的创建和使用,数据库表的创建和使用,表的扩展属性,数据库表之间的关系的创建。 三、数据库的创建(*.dbc)

1、使用界面方式创建数据库:项目管理器、“新建”按钮 2、使用命令方式创建数据库 CREATE DATABASE 数据库文件名或? 四、打开数据库 OPEN DATABASE 数据库名或? 五、设置当前数据库 SET DATABASE TO 数据库名 六、修改数据库 MODIFY DATABASE 数据库文件名或? 七、关闭数据库 CLOSE DATABASE &&关闭当前数据库 CLOSE DATABASE ALL &&关闭所有数据库 八、删除数据库 DELETE DATABASE 数据库文件名或? 数据库表的创建和使用(*.dbf) 在VFP中,每个数据表可以有两种存在状态:自由表(即没有和任何数据库关联的*.dbf文件)或数据库表(即与数据库关联的*.dbf 文件)。属于某一数据库的表称为“数据库表”;不属于任何数据库而独立存在的表称为自由表。数据库表和自由表可以相互转换。 一、数据库表的创建

数据结构实验报告-顺序表的创建、遍历及有序合并操作

数据结构实验报告-顺序表的创建、遍历及有序合并操作二、实验内容与步骤 实现顺序表的创建、遍历及有序合并操作,基本数据结构定义如下: typedef int ElemType; #define MAXSIZE 100 #define FALSE 0 #define TRUE 1 typedef struct {ElemType data[MAXSIZE]; int length; }seqlist; 创建顺序表,遍历顺序表 #include #include #define MAXSIZE 100 #define Icreament 20 #define FALSE 0

#define TRUE 1 typedef int ElemType; //用户自定义数据元素类型 // 顺序表结构体的定义 typedef struct { ElemType *elem; //顺序表的基地址 int length; //顺序表的当前长度 int listsize; //预设空间容量 }SqList; //线性表的顺序存储结构 SqList* InitList() //创建空的顺序表 { SqList* L = (SqList*)malloc(sizeof(SqList));//定义顺序表L if(!L) { printf("空间划分失败,程序退出\n"); return NULL; } L->elem=(ElemType *)malloc(MAXSIZE*sizeof(ElemType)); if(!L->elem) { printf("空间划分失败,程序退出\n");

查询及数据库操作

1. 索引 Index on 基本工资tag 11 asc / desc &&升序/降序&&建立索引Browse Set order to tag 11 Browse Set order to tag 0 Browse Set order to tag 11 Delete tag l l &&删除 Delete tag all 2 .统计 Count to … for… 第四章查询及数据库操作4.1显示查询 1 .Display /list /browse for 2. Locat for …. Continue.. 例如:set default to E:\VFP资料 use 人事档案 list for 性别="女" locat for 性别="男" display continue display continue display 3.快速查询(通过索引) 例如:index on 出生日期tag cs seek {^1972-3-4} display 4.多工作区的查询 Select 区号||区别名 例如:close all select 1 use 人事档案 select 2

use 部门 browse select 1 browse select 2 browse 例2:select 2 browse go 1 display select 1 go 1 display 5.访问非当前工作区的记录 格式; 别名.字段 例如:查询刘红所在部门名称及出生日期 close all sele 1 use 人事档案 sele 2 use 部门 sele 人事档案 locat for 姓名="刘红" sele 部门 locate for 部门编号=人事档案.部门编号 sele 人事档案 display 姓名,出生日期,部门.部门名称 例如:查询李明所在部门电话和领导姓名 查询所有人的部门领导和姓名 有效性规则的建立: 例如1: 合乎婚姻法的记录性规则: 性别=”男”and 婚否=.t. and 2008-year(出生日期)>=22or 性别=”女”and 婚否=.t.and2008-year(出生日期)>=20or not 婚否 有效性规则的建立首先要在数据库表中进行,其次再打开表的设计器,分别进行字段有效性规则的设置和记录有效性规则的设置

相关文档
相关文档 最新文档