一:命令行连接数据库  

  打开终端,运行命令mysql -uroot -p (p后面加密码,可以直接加,也可以回车在下一行输入,为了不暴露密码,回车在下行输入

  退出:exit或quit

  查看版本信息: select version();

  显示当前时间: select now();

  查看所有的数据库:show databases;

  使用数据库: use + 库名;

  查看当前使用的数据库: select database();

  创建数据库:create database 数据库名 charset=utf8;

        例:create database python charset=utf8;

  删除数据库:delete database 数据库名;

        例:delete database python;

  查看当前数据库中所有的表:show tables;

  查看表结构: desc 表名;

  创建表:auto_increment表示自动增长 

  1. CREATE TABLE table_name(
  2. column1 datatype contrai,
  3. column2 datatype,
  4. column3 datatype,
  5. .....
  6. columnN datatype,
  7. PRIMARY KEY(one or more columns)
  8. );

  创建班级表:

  1. create table classes(
  2. id int unsigned auto_increment primary key not null,
  3. name varchar(10)
  4. ); 
  1.  创建学生表:
  1. create table students(
  2. id int unsigned primary key auto_increment not null,
  3. name varchar(20) default '',
  4. age tinyint unsigned default 0,
  5. height decimal(5,2),
  6. gender enum('男','女','人妖','保密'),
  7. cls_id int unsigned default 0
  8. )

  修改表-添加字段:  

          alter table 表名 add 列名 类型;

          例:alter table students add birthday datetime;

  修改表-修改字段:重命名版       

          alter table 表名 change 原名 新名 类型及约束;
          例:alter table students change birthday birth datetime not null;

   修改表-修改字段:不重命名版      

          alter table 表名 modify 列名 类型及约束;

          例:alter table students modify birth date not null;

  修改表-删除字段 :

          alter table 表名 drop 列名; 
          例:alter table students drop birth;

  删除表:
        drop table 表名;
        例:drop table students;

  查看建表语句:

      show create table 表名;
      例: show create table classes;

二: 数据库的增删改查(curd)  

    curd的解释: 代表创建(Create)、更新(Update)、读取(Retrieve)和删除(Delete)  

  1.查询基本使用   

    (1)查询所有列  

        select * from 表名; 例: select * from classes;  

    (2)查询指定的列

        select 列1,列2 from 表名; 例: select id,name from classes;  

  2.增加

      格式:INSERT [INTO] tb_name [(col_name,...)] {VALUES | VALUE} ({expr | DEFAULT},...),(...),...

      说明:主键列是自动增长,但是在全列插入时需要占位,通常使用0或者 default 或者 null 来占位,插入成功后以实际数据为准

     (1)全列插入:值的顺序与表中字段的顺序对应

        insert into 表名 values(...);

        例:insert into students values(0,’郭靖‘,1,'蒙古','2016-1-2');

     (2)部分列插入,值的顺序与给出的列顺序对应

       insert into 表名(列1,列2,...)values(值1,值2,..);

       例:insert into students(name,hometown,birthday) values('黄蓉','桃花岛','2016-3-2');

     (3)全列多行插入:值的顺序与给出的列顺序对应

        insert into 表名 values(...),(...)...;  

        例:insert into classes values(0,'python1'),(0,'python2');

        nsert into 表名(列1,...) values(值1,...),(值1,...)...;

        例:insert into students(name) values('杨康'),('杨过'),('小龙女');   

  3.修改

     格式: UPDATE tb_name SET col1={expr1|DEFAULT} [,col2={expr2|default}]...[where 条件判断]  

       update 表名 set 列1=值1,列2=值2... where 条件

       例:update students set gender=0,hometown='北京' where id=5;   

   4.删除

      格式:DELETE FROM tbname [where 条件判断]

         TRUNCATE tbname

         delete from 表名 where 条件

         例:delete from students where id=5;


    
如果全部清空表中的数据delete from tbname;但是自增字段没有被重置
               truncate taname; 速度更快,并将自增字段重置

三:备份

  运行mysqldump命令

  1. mysqldump uroot p 数据库名 > python.sql;
  2.  
  3. # 按提示输入mysql的密码

四:恢复

  1.连接mysql,创建新的数据库

  2.退出连接,执行下面的命令 

  1. mysql -uroot p 新数据库名 < python.sql
  2.  
  3. # 根据提示输入mysql密码

MySQL之命令行简单操作MySQL(二)的更多相关文章

  1. linux shell命令行下操作mysql 删除mysql指定数据库下的所有表--亲测成功百分百测试通过--绝对可靠

    1,在shell提示符下查看mysql指定数据库下的表等数据

  2. Windows下通过CMD命令行程序操作MySQL数据库

    注意:如果您的MySQL没有安装在C盘下,先使用命令进入MySQL的安装目录下的bin目录中才可以进行后续操作. 方法如下:例如您安装在D盘.先输入 D:  回车即可进入D盘,再输入cd D:\您my ...

  3. mysql 数据库 命令行的操作——对表和字段的操作

    一.对表的操作 1.查看所有表 show tables: 2.创建表 create table 表名(字段1 类型1 约束1 ,字段2 类型2 约束2): 3.修改表的名字 rename table ...

  4. mysql 数据库 命令行的操作——对库的操作

    1.查看所有数据库 show databaese; 2.查看当前所用的数据库 show databases(): 3.切换数据库 use(数据库名): 4.创建数据库 create database ...

  5. [转]Mysql命令行常用操作

    Mysql命令行常用操作 一.从命令行登录MySQL数据库服务器 1.登录使用默认3306端口的MySQL /usr/local/mysql/bin/mysql -u root -p 2.通过TCP连 ...

  6. 命令行模式下 MYSQL导入导出.sql文件的方法

    一.MYSQL的命令行模式的设置:桌面->我的电脑->属性->环境变量->新建->PATH=“:path\mysql\bin;”其中path为MYSQL的安装路径.二.简 ...

  7. windows 下命令行启动停止mysql

    MySQL比较好玩一点就是它可以用多种方式启动,当然它也可以用多种方式关闭.下面我就mysql的几种启动方式简单的谈一谈,希望可以给大家提供一些参考. 第一种,用mysqld-nt来启动. 在没有进行 ...

  8. (转)Mysql常用命令行

    原文:http://www.cnblogs.com/TsengYuen/archive/2012/01/11/2319034.html Mysql常用命令行 Mysql经常使用号令行大全 熬头招.my ...

  9. C#中简单操作Mysql数据库

    以C#访问MySQL数据库,执行简单的CRUD. MySql.Data.dll是C#操作MySQL的驱动文件,是C#连接MySQL必要插件,使C#语言更简洁的操作MySQL数据库.可以用NuGet命令 ...

随机推荐

  1. centos7运维记录文档

    问题一:故障记录时间2019年4月4日,查看系统日志报错如下: tail -f /var/log/messages Apr 4 16:29:16 localhost kernel: tracker-e ...

  2. HBaseAPI

    环境准备 新建项目后在pom.xml中添加依赖: <dependency> <groupId>org.apache.hbase</groupId> <arti ...

  3. Linux 换 jdk 版本 环境没有生效

    Linux 换 jdk 版本 环境没有生效 把 jdk 1.7 换成 1.8, 路径设置好了后 用了下面两个都没有生效 . /etc/profile source ~/.bashrc 还是 jdk 1 ...

  4. USACO Poker Hands

    洛谷 P3078 [USACO13MAR]扑克牌型Poker Hands 题目传送门 JDOJ 2359: USACO 2013 Mar Silver 1.Poker Hands JDOJ传送门 题目 ...

  5. history.back(-1)和history.go(-1)的区别 (有错误)

    返回一个页面方法有很多,就好比给返回按钮绑定一个URL,但是如果一个页面可以从很多页面到达,那么这个页面返回的页面就不是固定的,那么绑定固定的URL显然不妥. 两个方法的区别 既然history.ba ...

  6. 每天一道Rust-LeetCode(2019-06-03)

    每天一道Rust-LeetCode(2019-06-02) 有序链表转换二叉搜索树 坚持每天一道题,刷题学习Rust. 原题 题目描述 给定一个单链表,其中的元素按升序排序,将其转换为高度平衡的二叉搜 ...

  7. 【oracle】去重

    基本去重: SELECT DISTINCT * FROM TABLE; 其他去重: 待添加

  8. Spring Cloud微服务安全实战_3-3_API安全之流控

    这几篇将API安全的 流控.认证.审计.授权 简单的过一遍,对这些概念先有个初步印象.后边还会详细讲解. 本篇说API安全之流控~第一印象. 一.概念 流控,流量控制,只放系统能处理的请求的数量过去, ...

  9. ESA2GJK1DH1K微信小程序篇: 小程序实现MQTT封包源码使用说明

    说明 我为了后期能够快速的让小程序实现MQTT,我做了一个MQTT的封装. 功能的封装有助于后期快速的开发,还方便咱维护. 我后期的所有代码皆使用此封装库, 这一节,我就详细的介绍我封装的MQTT.j ...

  10. 元素的alt和title有什么异同?

    ①alt作为图片的替代文字出现,title作为图片的解释文字出现. ②alt属性应用较少,如img.area.input中,title应用较多,如a.form.input.还有div.p这些块级元素都 ...