一个吃瓜群众眼中的里约奥运

php面试题的五——MySQL数据库(基础部分)

图片 1

五、MySQL数据库

mysql_num_rows()
mysql_affected_rows()
就简单个函数都企图被 mysql_query($query)操作的结果,mysql_num_rows()
返回结果集中行的多寡。mysql_affected_rows() 取得前一模一样不行 MySQL
操作所影响之笔录行数。
mysql_num_rows()仅对 SELECT 语句有效,要博得让 INSERT,UPDATE 或者
DELETE 查询所影响至之执行的多寡,用 mysql_affected_rows()。

里约奥运

相关问题:取得查询结果集总数的函数是?

mysql_num_rows()

文/花儿在输给

2. sql 语句应该考虑如何安全性?(新浪网技术部)

严防 Sql 注入,对特殊字符进行转义、过滤或者下预编译的 sql
语句绑定变量。
顶小权力原则,特别是并非为此 root
账户,为不同之类型的动作要组建以不同的账户。
当 sql
运行出错时,不要管数据库返回的错误信息全部显得为用户,以预防泄露服务器和数据库相关信息。

相差里约奥运会闭幕已经一个月了,为什么自己倍感了犹未老?孙杨、傅园慧、张继科等人依次加入电视综艺节目,无形中让丁同样栽奥运还未曾了的错觉。回望里大约,这顶奥运会健儿和这届奥运观众,将赛场内外的流水和泥石流一条脑儿地倒出来,直到现在都给自己这个吃瓜群众津津乐道。

3. 简易描述 mysql 中,索引,主键,唯一索引,联合索引的界别,对数据库的性有什么影响(从读写点儿者)(新浪网技术部)

索引是一律种植非常之文本(InnoDB
数据表上的目录是说明空间的一个有),它们包含对数码表里所有记录的援指针。
便索引(由重点字 KEY 或 INDEX
定义之目)的唯一任务是加速对数据的访问速度
常见索引允许为索引的数额排列包含重复的价值。如果能确定有数据列将只是含彼此各不相同的值,在啊这个数据列创建索引的时刻就是应当据此要字
UNIQUE 把她定义为一个唯一索引
也就是说,唯一索引好保证数据记录的唯一性

主键,是如出一辙种植特有之绝无仅有索引,在一如既往布置表中只能定义一个主键索引,主键用于唯一标识一修记下,使用要字
PRIMARY KEY 来创造。
目可以覆盖多单数据列,如像 INDEX(columnA,
columnB)索引,这即是一块索引
目录可以极大的加强多少的询问速度,但是会骤降插入、删除、更新表的速度,因为以执行这些写操作时,还要操作索引文件。

包涵我慢炖,在奥运了后才开回忆那些有,当时只道是平常啊。

4. 闹一个留言板,用 mysql 做数据库,用户信息包括:用户称,密码,email,留言内容连:留言 ID,标题,内容,发表时,状态(审核,未审批)(新浪网技术部)

求实现下列需求:
(1).数据库结构。无需写建表语句,用接近下面的表格,描述清楚即可,注意,要当索引栏中注明是否用创造索引,以及一旦创的目录的门类

表名 table_aaa  
字段名 字段说明 字段类型
name 姓名 varchar(64)
gender 性别 enum(‘M’,‘F’)

(2).用一个 sql 语句询问有刊留言数过 10
漫长之用户名及其留言数量,查询结果仍章数量降序排列

参考答案:
用户表结构如下:

表名 user  
字段名 字段说明 字段类型
user_id 用户编号 int unsigned
name 用户名 varchar(30)
password 密码 char(32)
email 邮箱 varchar(50)

留言表结构如下:

表名 message  
字段名 字段说明 字段类型
message_id 留言编号 int unsigned
title 标题 varchr(100)
content 内容 text
user_id 用户 id int unsigned
pubtime 发表时间 int unsigned
state 状态 tinyint 0 未审核 1 审核

查询语句如下:
SELECT u.name, COUNT(*) AS total
FROM user AS u INNER JOIN message AS m
ON u.user_id = m.user_id
GROUP BY u.name
HAVING total > 10
ORDER BY total DESC

1、吃瓜群众吃瓜皮:开幕式秀场,处处是玄机

5. 什么用命令将 mysql 里的数据备份出来(酷讯 PHP 工程师笔试题)

(1). 导出一张表
mysqldump -u 用户名 -p 密码 库名 表名 > 文件名(如 D:/a.sql)
(2). 导出多张表
mysqldump -u 用户名 -p 密码 库名 表名 1 表名 2 表名 3 > 文件名(如
D:/a.sql)
(3). 导出所有表
mysqldump -u 用户名 -p 密码 库名 > 文件名(如 D:/a.sql)
(4). 导出一个库房
mysqldump -u 用户名 -p 密码 -B 库名 > 文件名(如 D:/a.sql)

奥林匹克首坏当桑巴之国巴西设置,开幕式上鲜艳夺目的声光、热情之歌舞、出色之创意,让丁争议的巴西挽回一商行,而自己之关怀焦点以各国代表团入场仪式。

6. 点儿张表 city 表和 province 表。分别吗都市以及省的关系表。

city:

id city provinceid
1 广州 1
2 深圳 1
3 惠州 1
4 长沙 2
5 武汉 3

province:

id province
1 广东
2 湖南
3 湖北

(1). 写一长 sql 语句关系两独说明,实现:显示都的主干信息。
显示字段:城市 id ,城市名, 所属省份 。如:
id(城市 id) cityname(城市名) privence(所属省)
……
SELECT c.id AS id,c.city AS cityname,p.province
FROM city c LEFT JOIN province p ON c.provinceid=p.id

(2). 如果只要统计每个省有稍许只都,请用 group by 查询出来。
来得字段:省份 id ,省份名,包含多少只市。
SELECT p.id,p.province,count(c.id) AS num
FROM province p LEFT JOIN city c ON p.id = c.provinceid
GROUP BY p.id;

室友对自我充分无语,问我胡连在圈运动员入场式3所有,只拘留中国队出场不纵了了吗?

7. MySQL 数据库中之字段类型 varchar 和 char 的要区别是啊?哪种字段的摸效率要高,为什么?
  • 区分一,定长和变长
    char
    表示定长,长度固定,varchar代表变长,即长度可转换。当所插入的字符串超出其的长短时,视情形来拍卖,如果是严模式,则会拒绝插入并提醒错误信息,如果是宽大模式,则会截取然后插入。如果插入的字符串长度小于定义长度时,则会坐不同的不二法门来处理,如char(10),表示存储的凡10单字符,无论你插入的是稍稍,都是10独,如果简单10个,则就此空格填满。而varchar(10),小于10单的话,则插入多少个字符就抱多少只。
    varchar怎么亮所蕴藏字符串的长也?实际上,对于varchar字段来说,需要以一个(如果字符串长度小于255)或少单字节(长度超过255)来囤字符串的长。

  • 分别的二,存储的容量不同
    对 char 来说,最多会存放的字符个数 255,和编码无关。
    倘 varchar 呢,最多会存 65532 单字符。VARCHAR
    的最充分使得长度由最好要命实施大小及下的字符集确定。整体无比深长是
    65,532字节

极充分中长度是 65532 字节,在 varchar
存字符串的下,第一单字节是拖欠的,不抱任何的数目,然后还欲少独字节来存放在字符串的长短。所以中长度就是
65535 – 1 – 2= 65532

出于字符集来规定,字符集分单字节和多字节
Latin1 一个字符占一个字节,最多能存放 65532 单字符
GBK 一个字符占少数独字节, 最多克存 32766 个字符
UTF8 一个字符占三单字节, 最多克存 21844 只字符
注意,char 和 varchar 后面的长短表示的凡字符的个数,而休是配节数。

星星彼此较,char
的频率高,没有散,尤其履新比较累之时段,方便数据文件指针的操作。但不够灵活,在实质上运用时,应因实际需求来选用合适的数据类型。

自不够了!第一整是看的中央5之说,后来看了段手白岩松版,再后来同时再入坑扒细节,每次看都得到甚足。奥运会开幕式就是一个履之国家展览队,图文结合地吧大家补上初中地理课、各国体育“情报”。足足有207独代表团啊,207种植平民性格,207种审美趣味,堪称足不来户询问世界的得备佳品。

相关题材:若一个表定义为 create table t1(c int, c2 char(30), c3 varchar(N)) charset=utf8; 问N 的绝深价值又是有些?

(65535 – 1 – 2 – 4 – 30 * 3 )/3

挪最炫民族风路线的国家,你们装点了钢筋水泥的世界!

8. IP 该如何保存?

不过简单易行的法门是运用字符串(varchar)来保存,如果由效率考虑吧,可以拿 ip
保存也整型(unsigned int),使用 php 或 mysql 提供的函数将 ip
转换为整型,然后存储即可。
PHP 函数:long2ip()和 ip2long()
MySQL 函数:inet_aton()和 inet_ntop

图片 2

9. 存成绩表如下所示,试查询两宗和简单门以上无合格同学的平均分。
编号 姓名 科目 分数
1 张三 数学 90
2 张三 语文 50
3 张三 地理 40
4 李四 语文 55
5 李四 政治 45
6 王五 政治 30

#创建一个成绩表
CREATE TABLE grade(
id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(10) NOT NULL,
subject VARCHAR(10) NOT NULL,
score TINYINT UNSIGNED NOT NULL
);

#插入记录
INSERT INTO grade(name,subject,score) VALUES(‘张三’,’数学’,90);
INSERT INTO grade(name,subject,score) VALUES(‘张三’,’语文’,50);
INSERT INTO grade(name,subject,score) VALUES(‘张三’,’地理’,40);
INSERT INTO grade(name,subject,score) VALUES(‘李四’,’语文’,55);
INSERT INTO grade(name,subject,score) VALUES(‘李四’,’政治’,45);
INSERT INTO grade(name,subject,score) VALUES(‘王五’,’政治’,30);

#查询语句
SELECT name,AVG(score),SUM(score<60) AS gk
FROM grade
GROUP BY name
HAVING gk>=2;

老挝,民族风

10. 为记录足球比赛的结果,设计表如下:

team:参赛队伍表

字段名称 类型 描述
teamID int 主键
teamname varchar(20) 队伍名称

match:赛程表

字段名称 类型 描述
matchID int 主键
hostTeamID int 主队的 ID
gusetTeamID int 客队的 ID
marchResult varchar(20) 比赛结果
matchTime date 比赛日期

里头,match 赛程表中的 hostTeamID 与 guestTeamID 都与 team 表中之 teamID
关联,查出2006-6-1 到 2006-7-1
之间举行的有比赛,并且用以下形式列出:
拜仁 2:0 不莱梅 2006-6-21

#创建参赛队伍表
CREATE TABLE team(
teamID INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
teamName VARCHAR(30) NOT NULL
);

#向参赛队伍表中插入记录
INSERT INTO team(teamName) VALUES('拜仁');
INSERT INTO team(teamName) VALUES('不莱梅');
INSERT INTO team(teamName) VALUES('皇家马德里');
INSERT INTO team(teamName) VALUES('巴塞罗那');
INSERT INTO team(teamName) VALUES('切尔西');
INSERT INTO team(teamName) VALUES('曼联');
INSERT INTO team(teamName) VALUES('AC 米兰');
INSERT INTO team(teamName) VALUES('国际米兰');

#创建 match 赛程表
CREATE TABLE mat(
matchID INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEy,
hostTeamID INT UNSIGNED NOT NULL,
guestTeamID INT UNSIGNED NOT NULL,
matchResult VARCHAR(20) NOT NULL,
matchTime DATE NOT NULL
);

#向赛程表中插入几条记录
INSERT INTO mat(hostTeamID,guestTeamID,matchResult,matchTime)
VALUES(1,2,'3:1','2006-6-15');
INSERT INTO mat(hostTeamID,guestTeamID,matchResult,matchTime)
VALUES(3,4,'2:2','2006-6-28');
INSERT INTO mat(hostTeamID,guestTeamID,matchResult,matchTime)
VALUES(5,6,'0:2','2006-7-10');
INSERT INTO mat(hostTeamID,guestTeamID,matchResult,matchTime)
VALUES(7,8,'5:3','2006-5-30');

#查询语句
SELECT t1.teamName,matchResult,t2.teamName,matchTime FROM mat
LEFT JOIN team AS t1
ON hostTeamID = t1.teamID
LEFT JOIN team AS t2
ON guestTeamID = t2.teamID
WHERE matchTime BETWEEN '2006-6-1' AND '2006-7-1';

图片 3

11. 发如下两摆放表 a 和 b,请写有得结果说明底询问语句

表a:

id num
a 5
b 10
c 15
d 10

表b:

id num
b 5
c 15
d 20
e 99

结果表:

id sum(num)
a 5
b 15
c 30
d 30
e 99
#创建表 a
CREATE TABLE t1_uni(
id CHAR(1),
num TINYINT
)engine=MyISAM charset=utf8;

#创建表 b
CREATE TABLE t2_uni(
id CHAR(1),
num TINYINT
)engine=MyISAM charset=utf8;

#向 a 表中插入记录
INSERT INTO t1_uni VALUES('a',5),('b',10),('c',15),('d',10);
#向 b 表中插入记录
INSERT INTO t2_uni VALUES('b',5),('c',15),('d',20),('e',99);

#查询语句
SELECT id,SUM(num) FROM(
SELECT id,num FROM t1_uni
UNION ALL
SELECT id,num FROM t2_uni) AS tmp
GROUP BY id;

帕劳,红色+传统绘画

12. MYSQL 取得时日子之函数是?格式化日期的函数是?

current_time()用于取时岁月
date_format(datetime, format)用于格式化日期,如:select
date_format(now(),’%Y%m%d’);

图片 4

13. 描绘出发贴数最多之十独人口名字的 SQL,利用下表:members(id,username,posts,pass,email)

SELECT members.username
FROM members
ORDER BY posts DESC
LIMIT 10;

利比里亚,国旗绘到大袍子上,象征意义和舒服都完成了

[!!]14. 请简述项目中优化 sql 语句执行效率的艺术,从哪些方面,sql 语句性能如何分析?
  1. 尽心尽力选于小之排
  2. 以where中用的比频繁之字段建立目录
  3. select子句被避免下‘*’
  4. 避免以索引列上采用计算、not in 和<>等操作
  5. 当只有待一行数的时利用limit 1
  6. 确保单表数据未越200W,适时分割表。

针对查询比缓的话语,可以使用explain 来分析该语句具体的推行情况。

  1. SQL 中 LEFT JOIN 的意义是________,如果 tbl_user
    记录了生的真名(name)和学号(ID),tbl_score
    记录了学员(有的学生考试以后被开除了,没有该记录)的学号(ID)和考试成绩(score)以及考试课程(subject),要想打印出各个学生姓名及相应之底各科总成绩,则可就此
    SQL 语句_________。
    left join
    表示左外连接,以左表为遵循,左表中之笔录还见面出现在查询结果遭到,如果对应之笔录在右表中没匹配的记录,则右表的配段值为
    NULL 填充。

#创建表 tbl_user
CREATE TABLE tbl_user(
id INT NOT NULL,
name VARCHAR(50) NOT NULL,
PRIMARY KEY (id)
);

#创建表 tbl_socre
CREATE TABLE tbl_score(
id INT NOT NULL,
score DEC(6,2) NOT NULL,
subject VARCHAR(20) NOT NULL
);

#插入记录
INSERT INTO tbl_user (id, name) VALUES (1, 'beimu');
INSERT INTO tbl_user (id, name) VALUES (2, 'aihui');
INSERT INTO tbl_score (id, score, subject) VALUES (1, 90, '语文');
INSERT INTO tbl_score (id, score, subject) VALUES (1, 80, '数学');
INSERT INTO tbl_score (id, score, subject) VALUES (2, 86, '数学');
INSERT INTO tbl_score (id, score, subject) VALUES (2, 96, '语文');

#查询语句
SELECT a.id,SUM(b.score) AS sumscore
FROM tbl_user a LEFT JOIN tbl_score b
ON a.id=b.id
GROUP BY a.id;

蓝色系国家,表达静谧与低调,包容和诚意,有种淡淡的撩骚。

16. 行使 php 写一截简单询问,查出有人名也“张三”的情连打印出

表 user

name tel content date  
张三 13333663366 大专毕业 2006-10-11  
张三 13612312331 本科毕业 2006-10-15  
张四 021-55665566 中专毕业 2006-10-15  

吁根据地方的题目就代码:

$mysql_db=mysql_connect("local","root","pass");
mysql_select_db("DB",$mysql_db);
$result=mysql_query("select * from user where name='张三'");

while($row=mysql_fetch_array($result)){
    echo $row['name']. $row['tel']. $row['content']. $row['date'];
    echo "<br>";
}

图片 5

17. 勾来 SQL 语句的格式 : 插入 ,更新 ,删除(卓望)

表名 user

name tel content date  
张三 13333663366 大专毕业 2006-10-11  
张三 13612312331 本科毕业 2006-10-15  
张四 021-55665566 中专毕业 2006-10-15  

(a).有一致初记录(小王 13254748547 高中毕业 2007-05-06)请用 SQL
语句新增至表中
(b).请用 sql 语句把张三的光阴更新成为时系统时
(c).请写有删除名也张四的万事记下

INSERT INTO user(name,tel,content,date)VALUES('小王','13254748547','高中毕业','2007-05-06');
UPDATE user SET date = date_format(now(),'%Y-%m-%d') WHERE name = '张三'
DELETE FROM user WHERE name = '张四'

希腊,一个用一味蓝色之地方

8. MySQL 自增类型(通常为表 ID 字段)必需将那设为()

整型,并安装为 AUTO_INCREMENT

图片 6

19. 数据库中之政工是什么?

事务(transaction)是用作一个单元的一律组有序的数据库操作。如果组吃的富有操作都成,则当工作成功,即使只是出一个操作失败,事务也非成事。如果持有操作就,事务则付,其修改将作用为具有其他数据库进程。如果一个操作失败,则事务将回滚,该事务所有操作的熏陶还拿收回。
ACID 四很特征,原子性、隔离性、一致性、持久性。

美国,正青春

20. What’s the difference between mysql_fetch_row() and mysql_fetch_array()? (Yahoo)

mysql_fetch_row()
从和点名的结果标识关联的结果集中取一行数并作为数组返回。每个结果的列储存在一个数组的单元中,偏移量从
0 开始。
mysql_fetch_array() 是 mysql_fetch_row()
的扩张版本。除了将数据以数字索引方式囤于反复组中之外,还好以数据作为关联索引储存,用配段名作为键名。
mysql_fetch_array() 中可是选取的老二个参数 result_type
是一个常量,可以接受以下值:
MYSQL_ASSOC,MYSQL_NUM 和 MYSQL_BOTH。其默认值是 MYSQL_BOTH。
如 果 用 了 MYSQL_BOTH , 将 得 到 一 个 同 时 包 含 关 联 和 数 字 索
引 的 数 组 。 用MYSQL_ASSOC 只获关联索引(如同 mysql_fetch_assoc()
那样),用 MYSQL_NUM 只抱数字索引(如同 mysql_fetch_row() 那样)。

红色系国家,他们越过起了高级感、时尚感。

21. 伸手写有 php 连 mysql 连接着,获取下一个由增长 id 值的方法,可以描绘多独(酷讯)

道一致,使用 show table status ,然后拿走 auto_increment 的值
方法二,使用 select max(id) + 1 from table
方法三,如果是刚插入记录,可以应用 last_insert_id() + 1 获得

图片 7

22. 打表 login 中选出 name 字段包含 admin 的前 10 漫长结果有所信息之 sql 语句 (酷讯)

SELECT * FROM login WHERE name LIKE ‘%admin%’ LIMIT 10;

立马是古巴

23. 表中起 A B C 三排列,用 SQL 语句实现:当 A 列大于 B 列时选择 A 列,否则选择 B 列,当B 列大于 C 列时精选 B 列否则选择 C 列。

使用case语句,如下:
SELECT CASE WHEN A > B THEN A ELSE B END, CASE WHEN B > C THEN B ELSE C END FROM table

图片 8

24. 写来三种植以上 MySQL 数据库存储引擎的称呼(提示:不区分轻重缓急写)

MyISAM、InnoDB、BDB(Berkeley
DB)、Merge、Memory(Heap)、Example、Federated、Archive、CSV、Blackhole、MaxDB
等等十几单勾擎。

早前颁发之古巴代表团其他服装,号称“社会主义新型”

[!]25. 请简述数据库设计的范式及用。

诚如第 3
范式就可以,用于表结构的优化,这样做既可免应用程序过于复杂而为避免了
SQL 语句过于庞大所招系统效率低下。
率先范式:若涉模式 R
的各级一个性能是不可再解释的,且产生主键,则属第一范式。
亚范式:若 R
属于第一范式,且有着的非主键属性都全函数依赖让主键属性,则满足第二范式。
老三范式:若 R
属于第二范式,且富有的非主键属性没有一个凡传递函数依赖让候选主键属性,则满足第三范式。
当实际用被,可以因要求适当的逆范式。

图片 9

26. 抱时一赖补充加记录(假设 id 为主键,并且是起增类型)所出的 id 的函数是啊?

mysql_insert_id();如果上同样询问没有起 AUTO_INCREMENT 的值,则
mysql_insert_id()返回 0。

肯尼亚,为什么看起如此美

27. php 连接 mysql 之后,如何设置 mysql 的字符集编码为 utf8?

mysql_query(“set names utf8”);

再次看我们,西红柿炒鸡蛋,里面还有个别葱花!白岩松调侃,“中国队之西红柿炒蛋看上去还执行吧,毕竟中国人大多数学会的率先独菜就是西红柿炒蛋,算是中国人数的国民菜,低调又萌”。呃,看上去还行……吧……明明看到任何国家之装,白岩松的心情是,“我还不晓得为什么今天我会死关注这开幕式上各代表团入场式好看的衣装,看见人家小好看的进场服装还是死羡慕的”。

28. php 访问数据库来哇几步?

要害发生以下几只步骤:

  1. 连天数据库服务器:mysql_connect(‘host’,’user’,’password’);
  2. 选数据库:mysql_select_db(数据库名);
  3. 装由数据库提取数额的字符集:mysql_query(“set names utf8”);
  4. 执行 sql 语句:mysql_query(sql 语句);
  5. 处理结果集
  6. 关门结果集,释放资源:mysql_free_result($result);
  7. 闭馆与数据库服务器的连天:mysql_close($link);

图片 10

29. 当平凡 mysql 优化方面,最基本的啊是无限重点的优化是()。(奇矩互动)

询问优化

咱的番茄炒鸡蛋,以及葱花

30. 排有 mysql 数据库常用之几栽档次 HEAP、()、()。 (奇矩互动)

MyISAM,innoDB

戏了了装,再说说广受瞩目的各级旗手。如果自己统计没错的话,207单代表团,有73只是阴运动员扛旗的,占比为三分之一。这之中既出澳大利亚、加拿大、意大利这么的发达国家,也发生阿尔及利亚、伊朗如此的发展中国家,更发出中华香港、中华台北队。

31. 求于本 select * from table example where((a and b)and c or(((a and b)and(c and d)))优化的语句。(奇矩互动)

题材多了一个括号,在 where 后面,但不影响问题的意思,可以将 sql
语句优化如下:
select * from table example where a and b and c

往年奥运成绩,中国队都是阴盛阳衰;这届奥运会,中国女性运动员有256口,男选手发生160丁,也丢女运动员旗手。什么时才会轮到女旗手呢?白岩松也求了。这次就由雷声突破了男篮运动员的旗手垄断地位,也毕竟进步吧。

[!!]32. 说明 MySQL 外连接、内连续和由连接的区别 (小米)

先说啊是交叉连接,交叉连接而为笛卡尔积,它是赖不利用另外条件,直接用一个发明的装有记录及另一个表中的兼具记录一致相同配合配。
内连接虽然是只有极的接力连接,根据某条件筛选产生符合条件的记录,不符合条件的笔录不会见现出在结果集中,即内连只连接匹配的施行。
外连接其结果集中不仅带有符合连接条件的履,而且还会见席卷左表、右表或有限只表中的兼具数据实施,这三种植情况一一称为左外连接,右外连接,和全外连接。

左外连接,也如左连接,左表为主表,左表中的享有记录都见面油然而生在结果集中,对于那
若干在右表中连不曾匹配的笔录,仍然使展示,右边对应的那些许段值为 NULL
来填充。
右外连接,也如右连接,右表为主表,右表中的有记录还见面现出于结果集中。
左连接和右侧连接可以换,MySQL 目前还未支持全外连接。

2、吃瓜群众吃瓜瓤:伟大之女排,军功章也起己之一半

34. 形容来您所知晓之数据库。(亿邮)

MySQL,SQL Server, Oracle,Sybase, informix, DB2 等

说交当时届奥运会印象太酷的丁,前出孙杨、傅园慧、獒龙CP、林李,后发女排惊喜收官,太燃了,她们活脱脱就是打热血漫画走出去的!

35. 用户互为挚友的 SNS 存储结构怎么统筹。(亿邮)

率先是有用户表,如下:

CREATE TABLE user(
id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(30) NOT NULL DEFAULT '' COMMENT '用户名',
email VARCHAR(50) NOT NULL DEFAULT '' COMMENT '邮箱',
password CHAR(32) NOT NULL DEFAULT '' COMMENT '密码'
)engine=MyISAM charset=utf8 comment='用户表';
``

其次是用户间的关系,如下:

CREATE TABLE relation(
rel_id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,
fuid INT UNSIGNED NOT NULL COMMENT ‘关注人的 id’,
suid INT UNSIGNED NOT NULL COMMENT ‘被关注人数的 id’,
relation_type ENUM(‘S’,’D’) NOT NULL DEFAULT ‘S’ COMMENT ‘关系,s
为关注,
d 代表也好友’
)engine=MyISAM charset=utf8 comment=’用户关系表’;

###### 36. 假设现在有一个数据库服务器,服务器地址为 192.168.0.110,用户名为 root 密码为password 请使用 PHP 编写一个面向过程化的连接该数据库的脚本代码 (亿邮)
`$conn = mysql_connect('192.168.0.110','root','password') or die('数据库连接失败');`

###### [!!!]37. 简述在 MySQL 数据库中 MyISAM 和 InnoDB 的区别 (亿邮)
区别主要有以下几个:
1. 构成上,MyISAM 的表在磁盘中有三个文件组成,分别是表定义文件( .frm)、数据文件(.MYD)、索引文件(.MYI),而 InnoDB 的表由表定义文件(.frm)、表空间数据和日志文件组成。
1. 安全方面,MyISAM 强调的是性能,其查询效率较高,但不支持事务和外键等安全性方面的功能,而 InnoDB 支持事务和外键等高级功能,查询效率稍低。
1. 对锁的支持,MyISAM 支持表锁,而 InnoDB 支持行锁。

###### 38. 现在有下面一个查询语句 select * from tabname where id=2 and password='abc’如何判断它是现在是最优的。(亿邮)
可以使用 explain select * from tabname where id=2 and password='abc’来分析其执行情况。

###### 39. 请问如何在 Mysql 操作中如何写入 utf8 格式数据 (亿邮)
首先确保数据库中的表是基于 utf8 编码的,其次 php 文件是 utf8 编码,在执行 mysql操作之前,执行 mysql_query(‘set names utf8’)操作,对于要操作的文本如果是 utf8编码,则可以直接操作,如果是其它编码,则可以使用 iconv 函数将其转化为 utf8 编码,然后写入。

###### 40. mysql 中 varchar 的 最 大 长 度 是 多 少 ? 用 什 么 类 型 的 字 段 存 储 大 文 本 ?date 和datetime 和 timestamp 什么区别?怎么看数据库中有哪些 sql 正在执行? (卓望)
varchar 的最大有效长度由最大行大小和使用的字符集确定。整体最大长度是 65532 字节。
在 varchar 存字符串的时候,第一个字节是空的,不存任何的数据,然后还需要两个字节来存放字符串的长度。所以有效长度就是 65535 - 1 - 2 = 65532。
由字符集来确定,字符集分单字节和多字节,如果是单字节,如 latin1,则最多可以存放 65532 个字符,如果是多字节,如 GBK 则可以存放 32766 个字符,UTF8 则可以存放 21844个字符。

存储大文本可以使用 text 类型。
date 表示日期,其范围为 1000-01-01 ~ 9999-12-31
datetime 表示日期时间,其范围为 1000-01-01 00:00:00 ~ 9999-12-31 23:59:59
timestamp 是 unix 时 间 戳 的 日 期 时 间 表 示 方 式 , 其 范 围 较 小 为 1970-01-01 00:00:00~2038-01-19 03:14:07 ,timestamp 具备自动初始化和自动更新功能。

查看数据库中正在执行的 sql 语句可以使用日志,也可以使用 show processlist 命令。


41. 现在有一个 mysql 数据库表 visits 记录用户访问情况,表结构如下:

visits(
id int unsigned auto_increment,
user_id int unsigned comment ‘本次访问页面数’,
visit_time timestamp comment‘本次访问开始日’,
primary key(id)
);

用户每访问过一次网站(从进入到离开),会增加一条记录。记录用户的 ID(user_id),以及访问的页面总数。比如:
1,208,2,//208 这个用户访问 2 个页面
2,2073,3,
3,208,1,//208 用户访问了 1 个页面

(1).请写一个 SQL 语句挑出你是累计访问页面数最多的 10 个用户(user_id)和对应的访问页面数。
(2).请写一个 SQL 语句,输出累计访问页面数分别等于 1,2,3,4,5,6,7,8,9,10 的唯一用户的数量,如果某个数量对应的用户数为 0,可以不输出。 (嘀嗒团)

从题目的描述来看,表结构貌似有些问题,user_id 应为用户 ID,而不是访问页面数,增加一个字段 pages 表示访问页面数。
查询访问页面数最多的 10 个用户的查询语句如下:

SELECT user_id, sum(pages) as total
FROM visits
GROUP BY user_id
ORDER BY total DESC LIMIT 10;

输出累计访问页面数分别等于 1,2,3,4,5,6,7,8,9,10 的唯一用户的数量的查询语句如下:

SELECT total,count(user_id)
FROM (
SELECT user_id, sum(pages) AS total
FROM visits
GROUP BY user_id) AS temp
WHERE total IN (1,2,3,4,5,6,7,8,9,10)
GROUP BY total ;
“`

图片 11

[!!]42. 简述存储过程的适用情形

当用处理复杂的查询和运算时,可以行使存储过程。
自利用分层的基准,大量运用存储过程导致工作逻辑分散于 DB
和应用服务器层,不便民维护及换代。
完全来说,存储程序可以为此,但倘若慎重,最好才所以来维护,不用于工作逻辑和支持高并发高性能的东西。

咱俩是冠军

于小组赛6开销球队被,中国女排2胜过3因,以小组第四进入八胜,女排征途并无让看好。

四分之一决赛,在挤占主场优势的巴西观众的嘘声中,女排姑娘们进一步挫越勇,力克卫冕冠军巴西队生近四胜似。哎哟,不错啊。

半决赛,中国女排针对阵荷兰队,而几上前的小组赛,荷兰队既3较2击脱了中国队。经过同瓜分一分割地奋斗,中国队3比1打响复仇,虽然可怜比分看起格外好,但是27较25、29于27、25于23,每一样商家还战胜的大不方便。继2004年雅典奥运会夺金后,中国女排时隔12年还上奥运会决赛。哇,激动人心的随时来临了。

决赛,又是暨小组赛交过手的塞尔维亚队,当时中国队是0比3失败给了对方。在先期输一局的状态下,中国队并扳三柜,实现宏观逆袭,加冕里大约奥运会女排冠军!好样的,女排姑娘等!

原本是为2020年奥林匹克练兵的就到中国女排,在“铁榔头”郎平的排兵布阵下,一路并克劲敌,为中华取得第三栋奥运会冠军奖杯,就如郎平所说之:“谁坚持到最终,谁才笑得最好”。

记看决赛的时刻,看到中国队委了扳平供销社,我吓得赶紧拉电视了。因为自身属于圈中国队“谁比,谁就是败”的体质,比如04亚洲海中国VS日本,雅典奥运会王皓VS柳承敏,北京奥运会中国女排VS美国女排,我都“看”输了,所以这次不敢为女排来冒险。等待比赛结果的时刻十分漫长,间或伴有心跳加速、手心冒汗等病症,越想取胜,越不敢扣押。等交正午初始电视,发现一个胖子记者在收集女排运动员,他们身上带来的奖牌是金黄的,那是金牌!!我绝望放松了同一丁暴,赶紧报我妈这个好信息,也也友好发的力沾沾自喜,毕竟有无看之恩嘛。

3、吃瓜群众吃瓜籽:塞尔维亚,神奇之体育王国

图片 12

塞尔维亚开幕式服装,裙子很有风味

从女排决赛,我开始关心塞尔维亚于本届奥运会及之表现。

原对塞尔维亚之认,仅自于史教材和资讯,坐标欧洲药桶巴尔干半岛,从南斯拉夫,变成南联盟、塞黑、塞尔维亚,中间夹杂在98年美国轰爆我驻南斯拉夫大使馆的记。

一旦现,重新认识这个国度,才懂得她的大球项目实力如此的大。塞尔维亚旅获取2钱4雪2铜的好成绩,除了女排摘银,男篮也杀入决赛并取得银牌,女篮赢取铜牌,男子水球夺金。

事实证明,一皇家体育实力和国土面积、人口是匪化正比的。塞尔维亚怀有8.8万平方公里领土,人口只有710万(此处设比北上广动不动就2000万+的人数),国民热衷足球、篮球、排球、水球、网球、皮划艇、摔跤等走,从体育传统上虽强调积极努力的旺盛,比如,塞尔维亚的前身,南斯拉夫男篮可是70、78、90、98、02年世锦赛冠军。

传说,塞尔维亚儿女平均身高是世界最高,先天身体素质非常好,有利于大球的掌控能力,呃,也许跟巴尔干火药桶的地理位置吗有关,毕竟打仗多,民风彪悍。另外,塞尔维亚继续了前南地区大球优势传统,具有成熟的社技战术培养系统,加之经济腾飞快,号称“巴尔干之虎”,想使更上一层楼有项活动,还免是手到擒来?

回顾享尽各种资源的中国男足、男篮,成绩……真是无这。

最终附上里约奥林匹克女性当旗手的国家和所在名单:

安哥拉,阿尔及利亚,阿鲁巴,独立运动员,澳大利亚,奥地利,巴哈马,比利时,玻利维亚,保加利亚,不丹,佛得角,柬埔寨,加拿大,中非,乍得,治理,哥伦比亚,科摩罗,刚果(金),库克群岛,科特迪瓦,丹麦,萨尔瓦多,阿联酋,厄瓜多尔,斯洛伐克,萨克罗尼西亚,马其顿,菲律宾,芬兰,冈比亚,加纳,非帝马拉,几内亚,赤道几内亚,中国香港,印度尼西亚,伊朗,以色列,意大利,牙买加,科索沃,列支敦士登,立陶宛,马达加斯加,马尔代夫,马绍尔群岛,毛里求斯,墨西哥,黑山,尼泊尔,尼日利亚,巴勒斯坦,巴拉圭,肯尼亚,罗马尼,罗马尼亚,萨摩亚,圣卢西亚,圣多美及普林西比,塞内加尔,塞拉利昂,塞尔维亚,瑞典,瑞士,泰国,中华台北,东帝汶,多哥,英属维尔京群岛,津巴布韦,难民代表团,巴西。

文/花儿在负