mysql实验_Mysql实验内容 PDF 下载

主要内容:

实验二 实验名称:数据定义语言 DDL 实验目的:学会使用 DDL 进行表的定义,表结构修改,表删除等。 实验内容: 1. 创建 dept_info 表,包括两个列:系编号 dno 和系名称 dname,均为 varchar 型,长度为 10; 2. 维护表 dept_info 结构: 2.1 新增一个列:学生人数 student_number,number 型,3 位整数; 2.2 将 dno 的类型修改为 定长字符类型,长度为 5; 2.3 删除列:student_number。 2.4 重命令列名: 将 dno 改为 deptid; (注:rename ... to ) 3. 为 dept_info 增加 deptid 主键约束。 4.按照课本 P65 建立 student,course,specialty 以及 SC 表,并定义相应的主键和外键约束(注意建 表的顺序,主表先于从表建立); 5.为 dept_info 表的 deptid 添加一个 check 约束,取值为四个字符,首字符为’3’,尾字符为小写英文 字母,中间两个字符任意。 ALTER TABLE specinfo add CONSTRAINT sp_chk_1 check(specno like '3__[a-z]'); 实验三 实验名称:数据操作语言 DML 实验目的:学会使用 DML 进行数据插入,修改和删除等操作。 实验内容: 1. 输入课本 P92-93 面所提供的数据记录到对应的表中,每个表不少于 6 条数据记录; 2. 将 SC 表中学号为 1414855328 的成绩分数改为 88 分; 3. 删除 student 表中学号为 1414855328 的数据记录,观察并记下此时的错误提示内容,并描述原因; 4. 将 SC 表中学号为 1414855328 的记录全部删除; 5. 再次删除 student 表中学号为 1414855328 的数据记录,观察本次操作是否成功执行; 6. 将 SC 表中的所有记录删除。 实验四-五 实验名称:数据查询语言 实验目的:学会使用 DQL 进行单表,多表等查询。 实验内容: 1. 数据准备:建立两个表,并插入数据,。 (1)dept 部门表:(deptno 部门编号/dname 部门名称/loc 地点) #建立 dept 表的结构 CREATE TABLE DEPT ( DEPTNO NUMERIC(2) PRIMARY KEY ,

46 DNAME VARCHAR (14), LOC VARCHAR (13) ); #插入数据至 dept 表 insert into dept values(10,'ACCOUNTING','NEW YORK'); insert into dept values(20,'RESEARCH','DALLAS'); insert into dept values(30,'SALES','CHICAGO'); insert into dept values(40,'OPERATIONS','BOSTON'); (2)emp 员工表:(empno 员工号/ename 员工姓名/job 工作/mgr 上级编号/hiredate 受雇日期/sal 工 资/comm 奖金/deptno 部门编号) #建立 emp 表的结构 CREATE TABLE EMP ( EMPNO NUMERIC (4) NOT NULL PRIMARY KEY, ENAME VARCHAR (10), JOB VARCHAR (9), MGR NUMERIC(4), HIREDATE DATE, SAL NUMERIC(7, 2), COMM NUMERIC(7, 2), DEPTNO NUMERIC(2) REFERENCES dept(DEPTNO) ); #插入数据至 emp 表 insert into emp(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO) values(7369,'SMITH','CLERK',7902,'1980-12-17',800.00,20); insert into emp(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO) values(7566,'JONES','MANAGER',7839,'1981-4-2',2975.00,20); insert into emp(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO) values(7698,'BLAKE','MANAGER',7839,'1981-5-1',2850.00,30); insert into emp(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO) values(7782,'CLARK','MANAGER',7839,'1981-6-9',2450.00,10); insert into emp(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO) values(7788,'SCOTT','ANALYST',7566,'1987--4-19',3000.00,20); insert into emp(EMPNO,ENAME,JOB,HIREDATE,SAL,DEPTNO) values(7839,'KING','PRESIDENT','1981-11-17',5000.00,10); insert into emp(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO) values(7876,'ADAMS','CLERK',7788,'1987-5-23',1100.00,20);

insert into emp(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO) values(7900,'JAMES','CLERK',7698,'1981-12-3',950,30); insert into emp(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO) values(7902,'FORD','ANALYST',7566,'1981-12-3',3000,20); insert into emp(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO) values(7934,'MILLER','CLERK',7782,'1982-1-23',1300,10); insert into emp values(7499,'ALLEN','SALESMAN',7698,'1981-2-20',1600.00,300.00,30); insert into emp values(7521,'WARD','SALESMAN',7698,'1981-2-22',1250.00,500.00,30); insert into emp values(7654,'MARTIN','SALESMAN',7698,'1981-9-28',1250.00,1400.00,30); insert into emp values(9999,'SHUNPING','CLERK',7782,'1988-5-5',2456.34,55.66,10); insert into emp values(7844,'TURNER','SALESMAN',7698,'1981-9-8',1500.00,0.00,30); 2、编写 SQL 语句完成以下查询任务; (1)查询员工编号是 7566 的员工信息 SELECT * FROM emp e WHERE e.EMPNO = 7566; (2)查询不是销售员的员工信息 SELECT * FROM emp e WHERE e.JOB !=’SALESMAN’; (3)查询员工表的前三条记录 SELECT ename,emp.HIREDATE,sal FROM emp LIMIT 3; (4)查询工资在 2000 - 3000 之间的员工信息 SELECT * FROM emp e WHERE e.SAL BETWEEN 2000 AND 3000; (5)查询有奖金的员工信息 SELECT * FROM emp e WHERE e.COMM IS NOT NULL; (6)查询销售员中工资大于 1200 的员工信息入职日期在 1981 年 5 月之前的 SELECT * FROM emp e WHERE e.SAL > 1250 AND e.JOB = ‘salesman’ AND e.HIREDATE < ‘1981-5-1’; (7)查询工资大于 4500 或者是销售员的员工信息 SELECT * FROM emp e WHERE e.SAL > 4500 OR e.JOB = ‘salesman’; (8)查询 7566,7788,7956 三个员工的信息 SELECT * FROM emp e WHERE e.EMPNO = 7566 OR e.EMPNO = 7788 OR e.EMPNO = 7839; (9)查询 7566,7788,7956 三个员工的信息 SELECT * FROM emp e WHERE e.EMPNO IN (7566,7788,7839,777); (10)查询姓名中带有 A 的员工信息 SELECT * FROM emp e WHERE e.ENAME LIKE ‘%a%’; (11)查询姓名中以 A 开头的员工信息 SELECT * FROM emp e WHERE e.ENAME LIKE ‘a%’; (12)查询姓名中第二个字母是 A 的员工信息 SELECT * FROM emp e WHERE e.ENAME LIKE ‘_a%’; (13)求所有人的工资总和 SELECT SUM(sal) FROM emp ; (14)求 20 号部门的工资总和

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值