zoukankan      html  css  js  c++  java
  • shell批量查询数据库中的数据

    开发同事给我了一个txt文档,里面都是id,需要在某个库的某张表根据id查出对应的另外两个字段的值,因为id的数量很大,所以这里选择用脚本的方式批量去查询。
    txt文档我将它放在了/root目录下。

    脚本内容:

    #!/bin/bash
    set -x
    # 数据库信息
    # 连接数据库的信息
    dbuser='root'
    # 连接的host
    dbhostname='127.0.0.1'
    # 数据库密码
    dbpasswd='******'
    # 数据库名
    dbname='***'
    # 数据库表名
    tablename='******'
    
    # 查询函数 mysql -e表示要执行的命令
    for Id in `cat /root/id.txt`
    do
        echo $Id `mysql -u$dbuser -h$dbhostname -p$dbpasswd -e "use $dbname;select item01,item02 from $tablename where Id=$Id;"` >>/root/result.txt
    done
    

    或者写成:

    #!/bin/bash
    set -x
    # 数据库信息
    # 连接数据库的信息
    dbuser='root'
    # 连接的host
    dbhostname='127.0.0.1'
    # 数据库密码
    dbpasswd='******'
    # 数据库名
    dbname='***'
    # 数据库表名
    tablename='******'
    
    # 查询函数 mysql -e表示要执行的命令
    for Id in `cat /root/id.txt`
    do
       select_sql="select item01,item02 from $tablename where Id=$Id;"
       echo $Id `mysql -u$dbuser -p$dbpasswd $dbname -e "${select_sql}"` >> /root/result.txt 
    done
    

    将要查询的Id名和两个查询到的字段的结果都输出到文件result.txt中,删掉输出的字段名,就是我们需要的查询结果了。
    脚本批量查询的方式可以大大提高查询效率。

  • 相关阅读:
    UDP案例_在线咨询
    MFC对话框水平和垂直滚动条功能
    对话框中滚动条
    ON_COMMAND_RANGE 多个按钮响应一个函数
    char**赋值
    MFC如何使dialog对话框置顶
    如何让CListBox控件滚动条自动向下滚动?
    不带,以及带参数,带返回值的Lambda表达式
    JAVA学习_多线程技术
    最烦有些技术帖上来就放代码
  • 原文地址:https://www.cnblogs.com/even160941/p/15320110.html
Copyright © 2011-2022 走看看