MySql面试题:命令、sql操作、函数、事务、存储过程、存储引擎

Mysql面试题汇总:

一、Mysql命令:

1、Mysql的启动与停止:net start/stop mysql

2、登录:mysql -u root -p123456 -P 3306

3、登录后查看状态:status

4、显示所有数据库:show databases

5、切换到某个数据库:use db_name

6、显示某数据库中的所有表:show tables

7、备份数据库:mysqldump -uroot -p123456 db_name>test.txt

8、从sql导入:登录mysql->use db_name->source test.sql

9、修改密码:mysqladmin -u root -p旧密码 password 新密码

二、DDL 和 DML:

10、create:create database db_name/create table t_name(...)

11、drop:drop database ifexits db_name/drop table ifexits t_name

12、添加数据:insert into t_name(字段1,字段2...) values (值1,值2...);

13、更新:update table set 字段名 = ‘新值’[,字段2='新值'...]  [where id=id_num] order by id [des]

14、删除:delete from t_name where 条件语句

15、为数据库创建用户:create user user1 identified BY {password}, user2 identified BY {password2} ...;

 16、给用户授予某个表的控制权限:grant all ON db_name.t_name TO user_name [identified BY {password}]

17、增加字段:alter table t_name add column [col_name] [col_type];

18、指定位置插入某字段:alter table t_name add colomun [col_name] [col_type] after [next_col_name]

19、删除一个字段:alter table t_name drop column [col_name]

20、修改字段名称/类型:alter table change old_column new_column new_type

21、修改表名:alter table t_name rename to new_t_name;

22、清空并初始化表:truncate table t_name

三、函数与存储过程:

1、区别:

a、函数有且只有一个返回值,而存储过程有多个返回值,也可以没有返回值

b、函数只能有输入参数,而存储过程可以有多个in(入参)和out(出参)

c、存储过程更强大,可以实现复杂的业务逻辑,函数中不能使用insert,update,delete,create等语句

d、函数可以作为sql的查询语句使用,而存储过程只能,存储过程一般作为独立的部分来执行

2、触发器:触发器是一种特殊的存储过程,他的调用不是手动,而是有事件触发 

 a、触发器创建语句:

create trigger tri_name 
before/after insert/update/delete on
table_name for each row
trigger_stmt

四、MySql常见数据库引擎:

MySql常见数据库存储引擎有两种:InnoDBMyISAM

 1、两种引擎的区别:

a、InnoDB 支持事务而MyISAM不支持。事务出错可以回滚保证了数据的安全性。

b、InnoDB支持外键MyISAM不支持

c、MyISAM适合插入查询为主的应用,InnoDB适合频繁修改对安全性要求比较高的应用

d、InnoDB不支持FULLTEXT索引

e、InnoDB不保存表的行数需要select count()来查询,MyISAM包含表的行数。但有where条件是也会全表扫描

f、InnoDB支持行锁

2、修改表的存储引擎:alter table t_name engine=InnoDB

3、数据库事务:是一组或多个数据库操作统一执行或撤销的操作,要么执行要么全都不执行

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

who_am_i__

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值