既然要操作数据库就从数据库链接写起,包括建库、建表、增删该查字段及约束,删库,删表的数据,以下主要是对我以往面试的总结,欢迎补充!

一、数据库连接

1、连接本机(p和密码123456之间无空格)

mysql -u username -p123456;

2、远程连接

mysql  -h 要访问的ip地址 -u username -p123456;

二、对库的操作

create database db_name;

drop database db_name;

show databases;

use db_name;

rename database db_name to new_db_name

mysqldump -u username -p123456 db_name > 导出的文件名;               #备份

三、对表的操作

1、建表/删表/复制表/备份表

creat table db_name.tb_nane(

  id smallint unsigned auto_increment,

  username varchar(20) not null unique key,

  sex enum("1","2") default "1")

drop table (if exists) tb_name;

create table tb_name2 select * from db_name.tb_name;

mysqldump -u username -p123456 db_name tb_name> 导出的文件名;

2、插入数据

insert into tb_name (col_name1,col_name2)values (值1,值2);

insert into tb_name.tb_name(username,sex)values("zhang",1);

insert into tb_name.tb_name values (1,"wang",1),(2,"lili",2),(3,"haha",2);

3、删除数据

delete col_name from tb_name where col_name=值;                #删除某条记录

truncate table tb_name;                                                              #删除所有记录

4、增加/删除单列

alter table tb_name add col_name col_defination [first |after col_name];

alter table tb-name drop col_name;

5、增加/删除约束

alter table tb_name add primary key col_name;                      #主键(主键自动为not null;每张表只有一个主键)

alter table tb_name add unique col_name;

alter table tb_name add index index_name col_name;

alter table tb_name drop primary key;

6、修改约束

alter table tb_name modify id int unsigned;                          #修改列id的类型为int unsigned

alter table tb_name change id sid int unsigned;                 #修改列id的名字为sid,而且把属性修改为int unsigned

7、查看表结构

show colums from tb_name;

desc tb_name;

8、限制查询返回结果

1> limit(选出10到20条)<第一个记录集的编号是0>

select * from students order by id limit 9,10;

2> top选出前十条记录

select top 10 from students;

9、MySQL中的外连接,分为左外连接和右连接,即除了返回符合连接条件的结果之外,还要返回左表(左连接)或者右表(右连接)中不符合连接条件的结果,相对应的使用NULL对应。

select col_name from tb_name1 left join tb_name2 on tb_name1.col=tb_name2.col;

10、联合字符或者多个列(将列id与":"和列name和"="连接)

select concat(id,':',name,'=') from students;

面试之MySQL基本命令的更多相关文章

  1. MySQL基本命令和常用数据库对象

    MySQL基本命令: 连接远程主机的MySQL服务(为了保证安全性,执行下面命令时,可以省略-p后面的密码,执行命令后系统会提示输入密码) mysql -p 密码 -u 用户名 -h 主机地址 --d ...

  2. php面试专题---mysql数据库分库分表

    php面试专题---mysql数据库分库分表 一.总结 一句话总结: 通过数据切分技术将一个大的MySQLServer切分成多个小的MySQLServer,既攻克了写入性能瓶颈问题,同一时候也再一次提 ...

  3. php面试专题---MySQL分表

    php面试专题---MySQL分表 一.总结 一句话总结: 分库分表要数据达到一定的量级才用,这样才有效率,不然利不一定大于弊,可能会增加一次I/O消耗 1.分库分表的使用量级是多少? 单表行数超过 ...

  4. php面试专题---MySQL分区

    php面试专题---MySQL分区 一.总结 一句话总结: mysql的分区操作还比较简单,好处是也不用自己动手建表进行分区,和水平分表有点像 1.mysql分区简介? 一个表或索引-->N个物 ...

  5. php面试专题---MYSQL查询语句优化

    php面试专题---MYSQL查询语句优化 一.总结 一句话总结: mysql的性能优化包罗甚广: 索引优化,查询优化,查询缓存,服务器设置优化,操作系统和硬件优化,应用层面优化(web服务器,缓存) ...

  6. php面试专题---MySQL常用SQL语句优化

    php面试专题---MySQL常用SQL语句优化 一.总结 一句话总结: 原理,万变不离其宗:其实SQL语句优化的过程中,无非就是对mysql的执行计划理解,以及B+树索引的理解,其实只要我们理解执行 ...

  7. php面试专题---Mysql索引类型、介绍及优点

    php面试专题---Mysql索引类型.介绍及优点 一.总结 一句话总结: 精品视频讲解里面的资料来源也是通过各种资料,比如博客.书等,只不过是基于讲解者的知识体系有整理的过程 1.B-Tree索引三 ...

  8. php面试专题---Mysql索引原理及SQL优化

    php面试专题---Mysql索引原理及SQL优化 一.总结 一句话总结: 注意:只写精品 1.为表设置索引要付出代价 是什么? 存储空间:一是增加了数据库的存储空间 修改插入变动索引时间:二是在插入 ...

  9. MySQL基本命令操作及数据库基本概念

    MySQL基本命令操作及数据库基本概念 1.数据库的基本概念 2.主流数据库介绍 3.关系型非关系型数据库介绍 4.Mysql 安装方法 5.Mysql 基本操作命令 1.数据库的基本概念: 数据库的 ...

随机推荐

  1. CentOS7 开源跳板机(堡垒机) Jumpserver

    开源跳板机(堡垒机)Jumpserver 环境 CentOS 7   x64       关闭 selinux  firewalld jumpserver: 172.24.0.14 testserve ...

  2. nginx 生成 缩略图 and 生成缩略图到硬盘

    nginx  编译的时候增加  ./configure --with-http_image_filter_module 配置如下 server { listen     80; server_name ...

  3. CKeditor使用js验证不得为空

    if (CKEDITOR.instances.TextArea1.getData() == '') { alert('警告:详细内容不得为空!'); CKEDITOR.instances.TextAr ...

  4. 51NOD 1639 绑鞋带 数学

    http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1639 假如一开始有一根绳子. 那么增加一根的时候,可以插在它的尾部,也可 ...

  5. 让VLC也拥有斷點播放功能

    如何让VLC也拥有记忆功能,记住上次播放位置.以下都是在Windows系统下操作,其他 方法/步骤 下载 libsrpos_plugin-0.5.win 插件 https://sourceforge. ...

  6. linx建立用戶&組

    groupadd  test                  创建test用户组 useradd  user1                  创建user1用户 passwd   user1   ...

  7. iOS 之 UIStackView

    UIStackView是iOS9新推出的布局控件,它的出现,可以说颠覆了以往的布局方式. 问题时,如果我使用UIStackView,它能用在iOS7.8系统中吗? 我要测试一下.测试程序我放到gith ...

  8. 论MySQL数据库中两种数据引擎的差别

    InnoDB和MyISAM是在使用MySQL最常用的两个表类型,各有优缺点,视具体应用而定. 基本的差别为: MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持. MyISAM类型的表强 ...

  9. Angular - - angular.identity和angular.noop

    angular.identity 函数返回本身的第一个参数.这个函数一般用于函数风格. 格式:angular.identity() 使用代码: (function () { angular.modul ...

  10. systemd-journal[825]: Forwarding to syslog missed 99 messages

    In this particular case we have a DNS server running Bind which is logging all DNS queries. 7124 mes ...