zoukankan      html  css  js  c++  java
  • Linux下MySQL小尝试

      因为我用的linux机器事先已经装好了mysql,所以安装部门就先忽略。

      进入mysql,如果发现没权限的话,使用 mysql -uroot -p 输入密码即可

      

      首先我们使用 create database 数据库名; 来建一个 bryan_test的数据库:

      

      然后使用 show databases; 来查询当前有的数据库,可以看到bryan_test是存在的。

      接下来的操作,我们都是针对这个数据库的,因此我们第一步需要使用 use 数据库名;

      然后再使用建表语句:

    create table bryan_test( md5 varchar(16) primary key, eng varchar(256), chi varchar(256), cate varchar(20), url varchar(50), create_time date );

      

      建完表之后,我们就可以使用 show tables; 来查看我们建的表了。

      使用 desc 表名; 就可以看到数据库的字段属性了:

      

      试着插入一条记录看看:

    insert into translation values("12ab42cf4632def13",  "hello world", "你好,世界", "计算机用语", "www.testsql.com", '2017/01/12');

      

      插完之后查询一下,使用下面语句:

    select * from translation;

      

      顺便再看看如果要更新的话,例如我们要更新cate这一列内容:

    update translation set cate="计算机|||日常用语" where eng="hello world";

      

      最后我们看删除:

    delete from translation where cate like '%计算机%';

      

      到此为止。增、删、改、查我们已经都学习了。接下来我们看看如何进行批量的插入,首先我们准备一个文件,内容如下:

      

      我们通过shell脚本读取文件中的内容,然后写入到数据库中:

    #!/bin/bash
    
    #db相关
    username="root"
    password="******"
    dbname="bryan_test"
    tablename="translation"
    
    #数据相关
    md5="default"
    eng=""
    chi=""
    
    
    # 读取文件
    echo "read file"
    mysql -u${username} -p${password} -e "use ${dbname};"
    
    while read line
    do
        # 删除最后一个|||字符左边的所有字符
        chi=${line##*|||}
        #echo $chi
        
        # 删除第一个|||字符右边的所有字符
        md5=${line%%|||*}
        #echo $md5
    
        # 先删除最后一个|||右边的所有字符
        tmp=${line%|||*}
        # 再删除第一个|||字符左边的所有字符
        eng=${tmp#*|||}
        #echo $eng
        
        insert_sql="insert into ${tablename} values("${md5}",  "${eng}", "${chi}", "计算机用语", "www.testsql.com", '2017/01/12');"
        mysql -u${username} -p${password} ${dbname} -e "${insert_sql}"
        
    done < data.txt
    
    
    mysql -u${username} -p${password} ${dbname} -e "show tables;"
    
    echo "end"

      运行之后,我们就将这些数据插入到了数据库中,我们来查看一下,由于数据较多我们使用 limit 5来查看前三条数据(mysql 没有top这种用法),另外文本太长,我们选择用G按行垂直显示,命令为:

    select * from translation order by md5 limit 5 G;

      

      可见我们已经导入了至少1w条的数据了。这次的数据库相关操作就演示到这里了。

  • 相关阅读:
    每日英语:AntiJapan Protests Flare in China
    opencv CvMat矩阵学习
    warning C4018有符号无符号不匹配
    每日英语:Relationship Repair: 10 Tips for Thinking Like a Therapist
    结构体数组定义和引用
    每日英语:China's Conflicted Consumers
    一个托盘程序, 简化notifyicon的使用.
    nunit notes from TDD in .net
    一款能拖拉的winform树形控件
    vss 2005 internet visit
  • 原文地址:https://www.cnblogs.com/by-dream/p/6277603.html
Copyright © 2011-2022 走看看