mysql面试题一

2020-04-08编程17

1.请写出数据类型(intcharvarchardatetimetext)的意思;请问varchar和char有什么区别?

int整数,char定长字符,varchar变长字符,datetime日期时间型,text文本型.

varchar与char的区别:

char是固定长度的字符类型,分配多少空间,就占用多长空间.varchar是可变长度的字符类型,内容有多大就占用多大的空间,能有效节省空间.由于varchar类型是可变的,所以在数据长度改变的时,服务器要进行额外的操作,所以效率比char类型低.

2.MyISAM和InnoDB的基本区别?索引结构如何实现?

MyISAM类型不支持事务,表锁,易产生碎片,要经常优化,读写速度较快;

InnoDB类型支持事务,行锁,有崩溃恢复能力,读写速度比MyISAM慢.

创建索引:alerttabletablenameaddindex(´字段名´)

3.进入mysql管理命令行的命令?

Mysql-uroot-p回车密码

4.showdatabases;这个命令的作用?

显示当前mysql服务器中有哪些数据库

5.showcreatedatabasemysql;这个命令的作用?

显示创建数据库的sql语句

6.showcreatetableuser;这个命令的作用?

显示创建表的sql语句

7.descuser;这个命令的作用?

查询user表的结构

8.explainselect∗fromuser;这个命令的作用?

获取select相关信息

9.showprocesslist;这个命令的作用?

显示哪些线程正在运行

10.SHOWVARIABLES;这个命令的作用?

显示系统变量和值

11.SHOWVARIABLESlike’%conn%’;这个命令的作用?

显示系统变量名包含conn的值

12.LEFTJOIN写一个SQL语句?

SELECTA.id,A.classFROMALEFTJOINBONA.cid=B.id

13.in,notni,exist,notexist的作用和区别?

in在什么中;notin不在什么中;exists存在;notexists不存在

14.数据库索引有几类,分别是什么?什么时候该用索引?

普通索引,主键索引,唯一索引

并非所有的数据库都以相同的方式使用索引,作为通用规则,只有当经常查询列中的数据时才需要在表上创建索引.