《MySQL必知必会》实验指导书广州番禺职业技术学院信息工程学院2012.2实验一MySQL工具的使用和数据库的简单查询一、实验目的1、熟悉MySQL命令行实用程序的使用。
2、学会用命令行工具了解数据库和表的相关信息。
3、掌握简单的SQL语句的使用,学会运用SQL语句进行简单的查询。
二、实验理论基础及教材对应关系1、实验理论基础:(1)MySQL基本命令;(2)SELECT语句;2、本实验内容主要对应于教材第3章和第4章。
三、实验内容与步骤1、检查所用的计算机习题,确认是否已经安装了MySQL数据库管理软件。
如果系统安装了MySQL Server 5.0 ,可以通过“开始”菜单—>程序->MySQL-> MySQL Server 5.0-> MySQL Command Client 开启MySQL服务。
如下图:2.连接到MySQL:主机名,端口号,合法的用法名等都已经在在安装设置过程中配置好了,在此只要输入口令:root就能登陆了另外一种途径:使用net start mysql 启动myql服务(如果没有启动的话。
提示:使用net stop mysql 关闭服务)然后:使用mysql –uroot –proot进入管理界面。
假设root帐号的密码是root3.查看已经存在的数据库:在mysql> 提示符后输入命令Show databases ;后,可以看到如下的结果:表明有三个数据库:information_schema,mysql,test等。
4.查看数据库中的表:(1)用“use”命令选择要操作的数据库,如use mysql;回车后可以看到“Database changed”表示选择该数据库成功。
(2)输入命令“Show tables;”回车后可以看到所显示的mysql数据库中的表5.查看表中的列:输入命令“Show columns from host ;”查看表host中的列如下所示:使用脚本创建示例数据库:将crashcourse.sql文件复制到c:\crashcourse.sql使用source c:\\crashcourse.sql命令创建数据库以及示例数据。
6.简单的查询:(1)查询单列数据选择数据库:use crashcourse;输入命令:Select prod_nameFrom products;回车后可看到如下的结果:(2)查询多列数据:输入命令:SELECT prod_id, prod_name, prod_priceFROM products;回车后可看到如下的结果:(3)查找所以列输入命令: SELECT *FROM products; 回车后可看到如下的结果:(4)使用DISTINCT消除重复项输入命令:SELECT DISTINCT vend_id FROM products;回车后可看到如下的结果:(5)限制输出的行数输入命令: SELECT prod_nameFROM productsLIMIT 2,3;回车后可看到如下的结果:四、实验材料的提交与成绩评定1、本实验的实验报告一份(电子版或纸质版一份,具体形式由任课教师确定,格式参考学院统一实验报告)2、实验源程序一份,请表明题号(电子版)备注:做下一次实验之时提交上一次实验的材料,由各班学习委员以班为单位收集并上交任课教师。
3、实验成绩总分为10分,由指导老师根据学生实验表现和实验材料进行评定,本门课程结束后实验平均成绩(实验总成绩/实验次数)按照10%的比例记入期末考试总成绩。
实验二排序检索数据和数据过滤一、实验目的1、进一步掌握查询的方法,对查询的结果根据需要进行排序。
2、掌握使用where子句知道搜索条件的方法。
3、熟练掌握使用and操作符和or操作符进行查询。
二、实验理论基础及教材对应关系1、实验理论基础:(1)select语句中的order by 子句;(2)where子句;(3)and、or、in和not操作符。
2、本实验内容主要对应于教材第5章、第6章和第7章的内容。
三、实验内容与步骤1、对查询的结果进行排序:输入命令:SELECT prod_nameFROM productsORDER BY prod_name;回车后可看到如下的结果:2、指定排序方向从产品表中找出产品的标号、产品价格、产品名,并按产品价格从高到低排序。
输入命令:SELECT prod_id, prod_price, prod_nameFROM productsORDER BY prod_price DESC回车后,看看运行的结果。
3、order by 和limit的组合:找出产品价格最贵的价格。
输入命令:SELECT prod_priceFROM productsORDER BY prod_price DESCLIMIT 1;回车后,看看运行的结果。
4、where子句:(1)找出产品名为“fuses”的产品名和价格输入命令:SELECT prod_name, prod_priceFROM productsWHERE prod_name = 'fuses';注意:由于表中的数据在字符前后有空格,因此应将条件写成‘ fuses ’,即在fuses前后加一个空格,否则将找不到结果。
回车后,看看运行的结果。
(2)找出产品名小于或等于10美元的产品名和价格输入命令:SELECT prod_name, prod_priceFROM productsWHERE prod_price <= 10;回车后,看看运行的结果。
5.and操作符:找出供应商1003制造且价格小于等于10美元的所有产品的名称和价格。
输入命令:SELECT prod_id, prod_price, prod_nameFROM productsWHERE vend_id = 1003 AND prod_price <= 10;回车后,看看运行的结果。
6. or操作符:找出供应商1002或者供应商1003制造所有产品的名称和价格.输入命令:SELECT prod_name, prod_priceFROM productsWHERE vend_id = 1002 OR vend_id = 1003;回车后,看看运行的结果。
7.in操作符:输入命令:SELECT prod_name, prod_priceFROM productsWHERE vend_id IN (1002,1005)回车后,看看运行的结果。
8.not操作符找出不是供应商1002和1003提供的任意产品输入命令:SELECT prod_name, prod_priceFROM productsWHERE vend_id NOT IN (1002,1003)ORDER BY prod_name;回车后,看看运行的结果。
四、实验材料的提交与成绩评定1、本实验的实验报告一份(电子版或纸质版一份,具体形式由任课教师确定,格式参考学院统一实验报告)2、实验源程序一份,请表明题号(电子版)备注:做下一次实验之时提交上一次实验的材料,由各班学习委员以班为单位收集并上交任课教师。
3、实验成绩总分为10分,由指导老师根据学生实验表现和实验材料进行评定,本门课程结束后实验平均成绩(实验总成绩/实验次数)按照10%的比例记入期末考试总成绩。
实验三数据库的建立和表的操作一、实验目的1、掌握创建数据库和表的方法。
2、掌握修改表结构和删除表的方法。
3、熟练掌握给表添加和删除记录的方法。
二、实验理论基础及教材对应关系1、实验理论基础:(1)建立数据库、建立表;(2)修改表结构;(3)删除表。
(4)表中记录的添加和删除。
2、本实验内容主要对应于教材第19、21章的内容。
三、实验内容与步骤1、创建数据库命令格式:create database 数据库名称;以自己的名字的汉语拼音为数据库的名称,创建数据库,并用show命令查看所建立的数据库(show databases )。
2、创建表命令格式:create table 表的名称;注意:在创建表前应使用use 命令选中数据库,在此用 use lisi;(其中lisi 是刚才创建的数据库名)。
(1)创建表products(prod_id char(10), vend_id int,prod_name char(255), prod_price decimal(8,2))(2)创建表customers(cust_id int,cust_name char(50) ,cust_addresschar(50), cust_city char(50), cust_email char(50)) 要求以cust_id为关键字。
(3)创建表orders(order_num ,order_date,cust_id)要求order_num和cust_id 字段为整型 order_date字段为日期型。
(4)使用show命令查看创建的表,并将结果写入实验报告,包括创建表的命令。
3、修改表结构(1)给表添加一个字段命令格式:alter table 表名称 add 字段名字段类型;给products添加一个产品描述字段prod_desc,类型为text。
命令如下:alter table products add prod_desc text;再给表products添加一个字段prod_date ,类型为datetime。
(2)使用show命令查看修改后的表的结构,并将结果写入实验报告,包括修改表的命令。
(3)修改字段名命令格式:alter table 表名称 change 原字段名新字段名字段类型;将products表的prod_desc字段修改为prod_introduction,类型为char(255)。
命令如下:alter table products change prod_desc prod_introduction char(255);再将表products的字段prod_date , 修改为prod_discount,类型为decimal(10,2)。
(4)使用show命令查看修改后的表的结构,并将结果写入实验报告,包括修改表的命令。
(5)删除表的字段命令格式:alter table 表名称 drop column字段名;将orders表的order_date字段删除的命令如下:alter table orders drop column order_date;再将表orders表的cust_id字段删除。
(4)使用show命令查看删除后的表的结构,并将结果写入实验报告,包括删除的命令。