zoukankan      html  css  js  c++  java
  • MYSQL 的一些基本操作

    MYSQL 的一些基本操作

    首先进入mysql的编辑环境
    一.基本应用
    1. 显示mysql的版本,当前日期
    Mysql > select version(),current_date;
     
    2:利用mysql来计算md5加密,计算一些数值
    Mysql > select md5(‘welefen’),sin(pi()/4);//加密字符串welefen;执行sin( );
     
    3:显示用户下所有的数据库
    Mysql > show databases;
    4:显示某个数据库下所有的数据表
    Mysql > use welefen;
    Mysql > show tables;
     
    5:显示某个数据表中所有的字段;
    Mysql > describe userinfo;//显示userinfo表中所有的字段
     
    6:向数据表userinfo中插入数据
    Mysql > set character_set_client=’gb2312’;//设置字符的编码,如果不设置的话,极有可能会出现乱码的情况;
    现在假设我们有一条要插入到数据库中,例如:
    姓名:张三;密码:zhangsan;Email:zhangsan@gmail.com;出生日期:1986年10月12日
    地址:武汉市武汉科技大学学四舍;qq:86503236;
    Myslq > insert into userinfo values (1,’张三’,md5(‘zhangsan’),’zhangsan@gmail.com’,’1986-10-12’,’武汉市武汉科技大学学四舍’,86503236);
    下面我们来看看我们刚才插入的数据正确;
    7:从数据表中取数据
      (1):取出所有的数据;
      Mysql > select * from userinfo;
      (2) 取出符合条件的数据
       假如现在我要取出姓名为李四的信息
      Mysql > select * from userinfo where us_name=’李四’;
     
      (3) 取出符合条件的数据的一些信息
      假如现在我们要取出出生日期为1986-10-12的姓名和地址
      Myslq > select us_name,us_address from userinfo where us_born=’1986-10-12’;
     
    (4)其他信息:例如我们想知道用户
    现在是多少岁了
    Mysql > select us_name,(year(curdate())-year(us_born))-(right(curdate,5)-right(us_born,5))  as age from userinfo;
     
    (5)查询结果排序 ,只显示从什么位置到什么位置的结果(结果请大家根据自己的查看,这里就不显示了)
    Mysql > select us_name,(year(curdate())-year(us_born))-(right(curdate,5)-right(us_born,5))  as age from userinfo order by age asc limit 0,2;
     (6)模糊查询,通过使用like或者用regexp
      Mysql > select * from userinfo where us_address like ‘%武%’;//或者用regexp ‘武’
    8:更新数据库中的数据
    Mysql > update userinfo set us_passwd=md5(‘zhangsan1’),us_born=’2006-5-20’ where us_name=’张三’;
    9:删除数据表中的数据
    Mysql > delete from userinfo where us_name=’张三’;
    10:删除整个数据表
    Mysql > drop table welefen;
    11:删除整个数据库
    Mysql > drop database welefen;
    二:高级应用
    1.1:创建用户//创建一个用户名为welefen密码为welefen的用户
    Mysql > grant all
         > on *
         > to welefen identified by ‘welefen’
         > with grant option;
    1.2:将文件中的数据插入到数据表中
    Mysql > load data local infile ‘E:/php/welefen.sql’ into table userinfo
         > lines terminated by ‘\r\n’;
      (或者用source E:/php/welefen.sql,这是将数据导入到整个数据库中)
    2.1通过工具来实现一些应用
    Phpmyadmin 是一个很方便地对mysql进行操作的脚本,它能够创建数据库,数据表等
    配置它也是相当的简单,只要将class.inc.php里的用户名和密码改成有效的就可以了
    3.1通过php脚本来进行数据的导入
    <?php
    if (file_exists("db.sql"))//检查这个文件是否存在,存在的话才执行下一步
    {
     $file=file_get_contents("db.sql");//打开这个文件,并把内容作为一个字符船返回
     $sql=explode(';',$file);//通过分号将字符串分成一个数组
     $num=count($sql);
    mysql_connect("localhost","root","passwd");//数据库连接
     for ($i=0;$i<$num;$i++)
     {
      $result=@mysql_query($sql[$i]);
      if (!$result) {echo “failure.”;exit;}
     }
    }
    ?>
    这个脚本是相当简单的,如果你紧紧想把数据导入到数据库,我想这样就已经足够了,当然如果你做的是一些大的项目,可能在此基础上有些修改。如果你有什么比较好的建议,希望你回馈给我,我也只是新手,也还要大量的学习,希望多交流。
    3.2通过php脚本进行数据的备份
    <?php
    mysql_connect("localhost",'root','welefen');//数据库连接
    mysql_select_db('welefen');//选择数据库
    $query='show tables';//显示该数据库下所有的数据表
    $query=mysql_query($query);//执行查询语句
    while ($re=mysql_fetch_row($query))
    {
     $str='drop table if exists '.$re[0].';<br>';
     echo $str;
     $query1="show create table ".$re[0];//显示该数据表的结构
     $query1=mysql_query($query1);
     $re2=mysql_fetch_row($query1);
     echo $re2[1].';';
     $query8="select * from ".$re[0];//查询所有的数据
     $query8=mysql_query($query8);
     $str1="insert into ".$re[0].'values(';
     while ($re1=mysql_fetch_row($query8))
     {
      $num=count($re1);
      
      for ($i=0;$i<$num;$i++)
      {
       $str1.= $re1[$i].',';
      }
      $str1.=');';
     }
     echo $str1.'<br>';
    }
    ?>
    这个脚本只是简单的说明了备份数据库的过程,自己写的,水平有限,望大家提出好的意见。不过在真正做项目的时候,最好将备份写成class,既有条理又方便。

    以上是关于mysql数据库的一些基本的操作,写的比较简单,可能有些错误,还望大家指正。谢谢!!!

  • 相关阅读:
    Chevy equinox
    回家线路
    salesforce account hierarchy
    IOS8 对flex兼容性问题
    Chrome FeHelper 插件下载地址
    vue 项目抛出警告
    vue 干货
    Error in mounted hook: "TypeError: handlers[i].call is not a function" 原因
    vue 路由知识点(一级路由与二级路由嵌套)
    (转)ORA-01940: cannot drop a user that is currently connected 问题解析
  • 原文地址:https://www.cnblogs.com/cnsanshao/p/2337899.html
Copyright © 2011-2022 走看看