2、MySQL

上传人:ths****59 文档编号:45152368 上传时间:2018-06-15 格式:DOC 页数:13 大小:90KB
返回 下载 相关 举报
2、MySQL_第1页
第1页 / 共13页
2、MySQL_第2页
第2页 / 共13页
2、MySQL_第3页
第3页 / 共13页
2、MySQL_第4页
第4页 / 共13页
2、MySQL_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《2、MySQL》由会员分享,可在线阅读,更多相关《2、MySQL(13页珍藏版)》请在金锄头文库上搜索。

1、3.MySQL3.MySQL及及PHPPHP连接连接MySQLMySQL的部分的部分1、mysql数据库优化的一些方法1. 定义结构的优化(字段类型的选择)2. 表操作的优化(重点sql查询的优化)3. 数据库的配置优化(连接数,数据库自己的缓存,集群,主从)4. 外界优化(程序对数据的缓存,硬件(内存)2、如何判断SQL语句的运行效率?如何优化一个查询SQL?通过 showshow statusstatus 命令了解各种 SQL 的执行频率:explainexplain select * from table where id=1000; explain 定位执行效率较低的 SQL 语句优化

2、查询语句a.最好在相同字段进行比较操作,在建立好的索引字段上尽量减少函数操作例子 1:SELECT * FROM order WHERE YEAR(orderDate)=“good“ and name50的记录的c1.c2更新到A表中统一记录中的c1.c2字段中.(10分)11、什么是数据库索引,主键索引,唯一索引的区别,索引的缺点是什么?12、数据库设计时,常遇到的性能瓶颈有哪些,常有的解决方案?大存储,大访问量,大数据量。表的划分。关联 采用第三范式,集群,主从,读写分离。13、编写一个在线留言本,实现用户的在线留言功能,留言信息存储到数据库?14、实现无限级分类的数据库设计20、完成以下

3、操作:(一)创建新闻发布系统,表名为message有如下字段 (3分)id 文章idtitle 文章标题content 文章内容category_id 文章分类idhits 点击量(二)同样上述新闻发布系统:表comment记录用户回复内容,字段如下 (4分)comment_id 回复idid 文章id,关联message表中的idcomment_content 回复内容现通过查询数据库需要得到以下格式的文章标题列表,并按照回复数量排序,回复最高的排在最前面文章id 文章标题 点击量 回复数量用一个SQL语句完成上述查询,如果文章没有回复则回复数量显示为0(三)上述内容管理系统,表catego

4、ry保存分类信息,字段如下 (3分)category_id int(4) not null auto_increment;categroy_name varchar(40) not null;用户输入文章时,通过选择下拉菜单选定文章分类写出如何实现这个下拉菜单21、PHP可以和sql server/oracle等数据库连接吗?(1分)可以可以23、数据库Category (类别表)Id 类别 IDPid 上一级类别 IDName 类别名称Products (产品表)Id 产品 IDName 产品名称Categoryid 产品类别 IDInput_date 录入日期Product_hit (产品

5、点击表)Product_id 点击的产品Hit_time 点击的时间Hit_ip 点击的 IPA.写 SQL 语句,显示所有的产品的:产品名称、类别名称、录入日期B.写 SQL 语句,要求统计点击数前十位的:产品名称和产品点击数量。24、mysql中那些sql语句执行效率很差?如何避免使用这种sql语句?explain25、选择合适数据库类型写出建立如下学生信息表的SQL语句表名表名(Student)(Student)字段名称描述要求数据类型ID学生证号主键整数Name姓名不能为空字符串Birth生日不能为空时间 dateGender性别默认为男整数Desc备注信息文本1. 写出统计 1989

6、-1-1后出生的女生数量的SQL语句2. 用户前台表单添加学生信息 如何防止SQL注入, 采用预处理 或 检测转义添加的内容后再拼装sql语句26、做一个用户订阅杂志的项目,需要在MySQL数据库中保存的数据包括:用户姓名 用户编号 用户手机号,用户通讯地址,用户邮编,杂志编号,杂志名称,杂志种类,用户订阅的杂志编号A、写一个SQL语句,创建所有你认为需要的表(需要确定表名,字段名,数据类型,键,引擎,字符集.请不要使用中文代替表名,字段名等三张表(用户表、杂志表三张表(用户表、杂志表 杂志类别表杂志类别表 、订阅关联表(多对多)、订阅关联表(多对多) )B、有一个新用户(手机号=139000

7、000000,通讯地址=A,邮编=P,用户姓名=N),要订阅某本杂志(杂志编号=100001).请写出需要执行的SQL语句:1.1. 添加用户信息,并获取添加的自增添加用户信息,并获取添加的自增idid号(号(selectselect last_insert_id();last_insert_id();)2.2. 在订阅关联表中添加用户在订阅关联表中添加用户idid和杂志和杂志idid的关联信息的关联信息29、两张表city表和province表。分别为城市与省份的关系表 select * from city;idnameprovince_id1广州12深圳13北京24上海3 select *

8、 from province;idname1广东2北京3上海1)写一条sql语句关系两个表,实现:显示城市的基本信息显示字段:城市id,城市名,省份名2)要统计每个省份有多少个城市显示字段:省份id,省份名,包含多少个城市3.)3.)统计最新的统计最新的1010城市信息城市信息30、关系S(s#, sname, sex), C (c#, cname), SC(s#, c#) . 其中S#为学生号,sname为学生姓名,sex为性别,c#为课程号,cname为课程名。写出查询选修“计算机“课的全体女学生姓名的SQL语句。Select S.s#,S.sname,S.sex from S,SC Wh

9、ere S.s#=SC.s# and S.sex=”女” andSC.c#SC.c# in(selectin(select c#c# fromfrom C C wherewhere cname=cname=”计算机计算机”) )select S.sname from S,C,SC where S.s#=SC.s# and C.c#=SC.c# and ame=计算机 and S.sex=女;写出查询没有选修“数学“课的学生姓名的SQL语句31、用root登陆mysql数据库,如果mydb不存在,则在mysql中创建数据库mydb,给root用户分配所有权限从192.168.1.1 ip来访问m

10、ysdb数据库。 (root用户密码为空)mysqlcreate database if not exists mydb; mysqlgrant all privileges on mydb.* to root192.168.1.1 identified by ;mysqlflush privileges;/刷新系统权限表32.表1-message字段如下:id自增idtitle标题content内容category_id分类idhits点击量表2 字段如下commentcomment_id回复idid关联message表中的idcomment_content回复内容先通过查询数据库需要得到以

11、下格式的列表,并按照回复数量排序,回复最高的排在最前面。“文章id文章标题点击量回复数量”请写出sql:33、在平常mysql优化方面,最基本的也是最重要的优化是(添加索引) 。34、列出mysql数据库常用的几种类型HEAP、 (MyISAM) 、 (InnoDB) 。35、请对于据select * from tableExample where (a and b) and c or (a and b ) and (c and d)优化的语句。37、从表login中选出name字段包含admin的前10条结果所有信息的sql语句39、如何进行防SQL注入: 预处理/SQL转义40、在数据库t

12、est中的一个表student,字段是name,class,score。分别代表姓名、所在班级,分数。1) 学出每个班级中的学生,按照成绩降序排序;2) 查出每个班的及格人数和不及格人数,格式为:class、及格人数、不及格人数;3) 用PHP写入连接数据库(“localhost“,“msuser“,“mspass“)、执行以上SQL、显示结果、判断错误、关闭数据库的过程;46、MySQL存储引擎中MyISAM和InnoDB,在同样的应用场景中各有什么优缺点,索引结构如何实现47、如下user表结构名称类型说明备注UidInt unsigned主键NameVarchar(20)AgeTinyi

13、nt unsigned需求:A、增加一个字段性别sex,写出修改语句B、查询出年龄介于20岁到30岁之间的用户C、如果是一个Web频繁访问的查询,上题的查询如何优化?(为age字段添加索引)49、本地mysql数据库db_test里已建有表friend,数据库的连接用户为root,密码为123friend表字段为:id,name,age,gender,phone,email请使用php连接mysql,选择出friend表里age 20的所有记录打印结果,并统计出查询出的结果总数。50、以下有两个表user表 字段id (int),name (varchar)score表 字段uiduid (i

14、nt(int),subject (varchar) ,score (int)score表的uid字段与user表的id字段关联要求写出以下的sql语句(1)在user表里新插入一条记录,在score表里插入与新加入的记录关联的两条记录(2)获取score表里uid为2的用户score最高的5条记录(3)使用联合查询获取name为“张三”的用户的总分数(4)删除name为“李四”的用户,包括分数记录(5)清空score表 (6)删除user表 59、一张表,里面有 ID 自增主键,当 insert 了 17 条记录之后,删除里 15,16,17条记录,再把 Mysql 重启,再 insert 一

15、条记录,这条记录的 ID 是 18 还是 15? 61、MySQL 数据库,一天一万条以上的增量,怎么优化?(主从,分库分表)72、主键 和外键表示什么?一般用于做什么?(数据的完整约束)74、您所知道的 MYSQL 数据库备份,还原方式有哪几种?(命令行、工具)75、简述怎么合理的使用 memcache 缓存?如果缓存数据量过大怎么部署?(分布式,缓存时间,优化缓存数据)76、数据库类型(int,varchar,char,datetime,text)各是什么类型,varchar 和char 的区别82、数据库索引有几类,分别是什么?什么时候该用索引83、MYSQL 表的常见类型都有哪些?My

16、ISAM 的表由哪些文件组成?grade.frm(结构) 、grade.MYD(数据) 、grade.MYI(索引)84、一个 article 表含有 title、classid、dateline 以及其他字段,请写 sql 语句,查询出最新的 8 篇文章。85、一个 article 表字段为 id/title/type_id/author/content/dateline/active,另外一个 article_type表字段为 id/title。要求显示 article 表的最新 5 条文章作者和文章分类名。86、从表 a 中删除 id 大于 5 同时 sex 为 1 的记录。87、设 b 表和 c 表结构完全一样。把 b 表的数据全部插入 c 表中。写出 sql 语句并列出注意事项及这种用法的用途。88、写出发帖数最多的十个人名字的 SQL,利用下表:Members(id,usename,posts,pass,email)91、如何提高数据库访问

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号