zoukankan      html  css  js  c++  java
  • MySQL之mysql客户端工作的批处理一些使用手法

    通常我们会用mysql这个客户端程序来连接mysql库、这个通常是工作在交互式模式下的、如我们连接上mysql并执行如下操作:

    mysql -uroot -h127.0.0.1 -P3306
    Welcome to the MySQL monitor.  Commands end with ; or g.
    Your MySQL connection id is 96
    Server version: 5.7.17-enterprise-commercial-advanced-log MySQL Enterprise Server - Advanced Edition (Commercial)
    
    Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
    
    mysql> 

    这个时候我们就可以通过sql语句来完成与数据库的交互操作了如:

    use tempdb;
    Database changed
    mysql> desc person;
    +-------+------------+------+-----+---------+----------------+
    | Field | Type       | Null | Key | Default | Extra          |
    +-------+------------+------+-----+---------+----------------+
    | id    | int(11)    | NO   | PRI | NULL    | auto_increment |
    | name  | varchar(8) | YES  | UNI | NULL    |                |
    +-------+------------+------+-----+---------+----------------+
    2 rows in set (0.01 sec)
    
    mysql> select * from person;
    +----+------+
    | id | name |
    +----+------+
    |  1 | a    |
    |  2 | b    |
    |  3 | c    |
    +----+------+
    3 rows in set (0.00 sec)
    
    mysql> 

    说了这么多只是为了把今天的主角引出来、这个就是mysql批处理模式

    1、批处理方式执行单条语句

    mysql -uroot -h127.0.0.1 -P3306 -e"select * from tempdb.person"
    +----+------+
    | id | name |
    +----+------+
    |  1 | a    |
    |  2 | b    |
    |  3 | c    |
    +----+------+

    2、以输入重定向的方式执行一个sql脚本文件

    cat /tmp/script.sql 
    select * from tempdb.person;
    
    
    mysql -h127.0.0.1 -uroot </tmp/script.sql 
    id    name
    1    a
    2    b
    3    c

    3、以source 语句的方式执行一个sql脚本文件

    mysql -h127.0.0.1 -uroot -e"source /tmp/script.sql"
    +----+------+
    | id | name |
    +----+------+
    |  1 | a    |
    |  2 | b    |
    |  3 | c    |
    +----+------+

    4、不知道你有没有发现不同的执行方式对应的输出格式会有不同、如例2中的输出就没有格式化成表格、这里我们要讲一下

    mysql批处理模式下对输出格式的定制 -t 以表格方式输出 -v 输出的同时打印所执行的sql语句

    mysql -h127.0.0.1 -uroot </tmp/script.sql -t
    +----+------+
    | id | name |
    +----+------+
    |  1 | a    |
    |  2 | b    |
    |  3 | c    |
    +----+------+
    
    
    mysql -h127.0.0.1 -uroot </tmp/script.sql -v
    --------------
    select * from tempdb.person
    --------------
    
    id    name
    1    a
    2    b
    3    c
    
    
    mysql -h127.0.0.1 -uroot </tmp/script.sql -tv
    --------------
    select * from tempdb.person
    --------------
    
    +----+------+
    | id | name |
    +----+------+
    |  1 | a    |
    |  2 | b    |
    |  3 | c    |
    +----+------+

    ------

  • 相关阅读:
    为图片指定区域添加链接
    数值取值范围问题
    【leetcode】柱状图中最大的矩形(第二遍)
    【leetcode 33】搜索旋转排序数组(第二遍)
    【Educational Codeforces Round 81 (Rated for Div. 2) C】Obtain The String
    【Educational Codeforces Round 81 (Rated for Div. 2) B】Infinite Prefixes
    【Educational Codeforces Round 81 (Rated for Div. 2) A】Display The Number
    【Codeforces 716B】Complete the Word
    一个简陋的留言板
    HTML,CSS,JavaScript,AJAX,JSP,Servlet,JDBC,Structs,Spring,Hibernate,Xml等概念
  • 原文地址:https://www.cnblogs.com/JiangLe/p/6604267.html
Copyright © 2011-2022 走看看