zoukankan      html  css  js  c++  java
  • Mysql数据库操作复习,增删改查

    Mysql数据库

    Apache(服务员)    php(大厨)    mysql(冰柜)

    Mysql是瑞典的mysqlAB公司开发的一款中小型关系型数据库管理系统。

    MysqlAB公司在2008年被Sun(java公司)给收购了

    2009年Sun(java公司)被Oracle收购。

    Mysql是一款免费数据库,体积小,运行速度快。

    主流数据库(SQLserver微软   Oracle甲骨文   DB2(IBM)   mysql)

    Mysql数据库数据库量一般保持在1000万以内,速度活性可以保持。

    Mysql是一款数据库软件,需要被安装在服务器里边。

    【数据存储及与mysql数据库系统的关系】

    数据如何存放到数据库里边

    图书管理信息(图书、借还信息、作者信息)

    有一本图书,图书的名字是“php入门”,价格是“45元”,出版社“铁道出版社”,作者“孙书华”,该信息需要被存放到我们的数据库里边。

    Php入门 45元  铁道出版社  孙书华(类似在记事本里边存放内容)
    在记事本里边存放图书,图书的查询、修改、删除、增加都不容易操作

     

    【访问数据库】

     

    Php流程控制、函数

    Mysql基本操作(数据库和数据表的创建和删除)

    【mysql操作回顾】

    1. 登陆数据库

       mysql -h主机名  -u用户名  -p密码

     

    2. 查询当前数据库管理系统有多少数据库存在

       show databases;

     

    3. 进入具体数据库/使用具体数据库

       use 数据库名字;

     

    4. 查询当前数据库数据表的情况信息

       show tables;

     

    5. 创建数据库

       create database 库名;

     

    6. 删除数据库

       drop  database  库名;

     

    7. 创建数据表book

       书名name  价格price  出版社publish  作者author

       create table book(

           字段  类型,

           字段 类型,

       )

       数据类型:int整型   varchar(长度)

       create table book(

           name varchar(32),

           price int,

           publish varchar(64),

           author  varchar(16)

       );

     

       create table author(

           name varchar(32),

           age int

       );

     

    8. 删除数据表

       drop table 表名;

     

    mysql> #查看数据库

    mysql> show databases;

    +--------------------+

    | Database           |

    +--------------------+

    | information_schema |

    | library            |

    | mysql              |

    | test               |

    +--------------------+

    4 rows in set (0.00 sec)

     

    mysql> #查看数据表

    mysql> show tables;

    +-------------------+

    | Tables_in_library |

    +-------------------+

    | author            |

    | book              |

    +-------------------+

    2 rows in set (0.00 sec)

     

    mysql> #创建数据库

    mysql> create database shop;

    Query OK, 1 row affected (0.00 sec)

     

     

     

    ü  Mysql  -h主机名  -u用户名  -p密码  (登陆mysql数据库)

    ü  Show  databases;  (查看有多少数据库可供使用)

    ü  Use  数据库名字; (进入数据库、使用数据库)

    ü  Create  database  数据库名字;  (创建数据库)

    ü  Drop  database  库名;     (删除数据库)

    ü  Create  table  (

    字段  类型,

    字段  类型

    。。。

    ü  )     (创建数据表)

    Drop  table  表名;  (删除数据表

    ü  Mysql  -h主机名  -u用户名  -p密码  (登陆mysql数据库)

    ü  Show  databases;  (查看有多少数据库可供使用)

    ü  Use  数据库名字; (进入数据库、使用数据库)

    ü  Create  database  数据库名字;  (创建数据库)

    ü  Drop  database  库名;     (删除数据库)

    ü  Create  table  (

    字段  类型,

    字段  类型

    。。。

    ü  )     (创建数据表)

    ü  Drop  table  表名;  (删除数据表)

    登录mysql数据库

    启动服务

     

    说明mysql命令的没有找到,有相应的程序文件需要被执行。

    解决:

     

     

    设置环境变量,让系统自动帮组我们找到mysql命令所对应的执行文件。

    注意:

           ① 我们在对数据库进行操作的时候,像创建表、删除表等操作,需要进入指定的数据库,才可以执行操作,否则提示“没有选择数据库”

     

    如果出现以上提示,说明没有选择数据库(use  库名;)

           ② 每条sql语句后边都使用”;”分号结束。(use  选择数据库除外)

    【为数据表添加新的记录信息】

    一般数据库操作有4种基本操作:数据的增insert、删delete、改update、查select

    为“图书”表添加新的数据信息

    有一个问题:现在还不知道图书表有什么字段可以供操作。

    Insert  into  表名  values (单域值,单域值,单域值,……);

    有几个字段,就写几个单域值,并且它们是一一匹配的。

    数据表所有字段信息都要补全

    Php入门   60   清华出版社    韩顺平

    Insert  into  book   values  (‘Php入门’,’60’,’ 清华出版社’,’ 韩顺平’);

    Insert  into  book   values  (‘javascript巧妙用法’,’89’,’ 北大出版社’,’ 古龙’);

    有的时候我们添加数据信息,有的字段不知道是什么值,这就要求我们可以为指定的字符添加数据信息

    Insert  into  表名  (字段,字段,字段)  values  (单域值,单域值,单域值);

    注意:字段与单域值 一一匹配。

    Insert  into  book  (name,publish,author)  values  (‘css3.0特性介绍’,’铁道出版社’,’琼瑶’);

    可以针对具体字段添加数据信息

    ( 为什么把代码复制到editplus里边

    因为sql语句的标点符号都要求英文输入法的标点符号 逗号、引号

    在word文档里边输入的标点符号,像单引号  是中文输入法的单引号。)

     

    Sql语句有报语法错误:你的sql语句有语法错误,请检查手册看看你的sql语句版本是否支持你的sql语句这样的用法。

    【查看数据表的数据】

    数据的增insert、删delete、改update、查select

    Select  *  from  表名;  //注意  from  不要写成  form

    l   * 会查询数据表全部字段信息

    有的时候我们需要查询指定字段的信息

    比如,我们只查询作者的信息  或者是 书名的信息

    Select  字段,字段,字段  from  表名;

     

    【删除数据表信息】

    数据的增insert、删delete、改update、查select

    Delete  from  表名;

    上边的删除类似“清空”式的删除。

    一般我们删除数据,需要指定具体的条件,否则会清空数据表,造成数据库事故。

     

    一般数据库管理员还会使用一种方法,使得数据表的数据被清空

    Truncate  表名;  #清空数据表

    比如:我们只删除“php入门”这本书,其他的图书都保留。这时候sql语句需要有限制条件。

    Delete  from  表名  where  数据记录限制条件;

    限制条件:图书的名字等于“php入门”

    Delete  from  book  where  name=’Php入门’;

    价格> 具体值

    价格< 具体值

    根据删除,我们知道在做“查询”的时候也可以做限制条件。

    比如:我想要查询价格大于70元图书的信息。

    注意:

           在sql语句里边,一般“值”的数据都使用引号给括起来,字段无需引号。

           删除数据的时候,要有where条件,否则是清空数据表,造成数据库事故。

    【多条件记录操作】

    mysql> # 查询图书价格大于50元并且是北大出版社出版

    mysql> select * from book where price>50 and publish='北大出版社';

    +--------------------+-------+------------+--------+

    | name               | price | publish    | author |

    +--------------------+-------+------------+--------+

    | javascript巧妙用法 |    89 | 北大出版社 |  古龙  |

    | linux常用命令      |    95 | 北大出版社 |  古龙  |

    +--------------------+-------+------------+--------+

    2 rows in set (0.00 sec)

    Sql语句有多种条件做限制,条件间使用“and”连接。

    【记录信息修改】

    数据的增insert、删delete、改update、查select

    Update  表名  set  字段=’单域值’   where  条件;  //只修改指定条件的单个字段信息

    Update  表名  set  字段=’单域值’, 字段=’单域值’, 字段=’单域值’  where  条件;  //同时会修改多个字段的信息

    Update  表名 set  字段=’单域值’;  //该用法会把全部信息记录都修改,要小心使用

     

    没有识别字段”pulish”

     

    修改总结:

           我们可以修改一个字段,也可以修改多个字段,中间使用”,”逗号分隔。

           修改的时候语句有where条件限制,如果没有,则会修改全部信息记录。

    【主键使用】

    原则上讲每个数据表都应该有主键。

    主键就是数据表里边的一个字段。字段里边的信息都是不同,可以唯一确定每条记录。

    一般主键的信息我们使用自动自动增长的数字来表示。

    主键作用:可以设定数据表里边的每条记录都是唯一的。

    生活中也有主键的存在:一个人,名字是“张楚生”,‘男’,‘北京’,‘海淀’,如果一个公司里边有许多“张楚生”存在,并且它们的数据又极为相似,那么如何能区分出来不同的“张楚生”,我么可以通过“身份证号码”来区分不同的人。

    一般习惯上使用”id”代表主键,identify 确认、标识。

    真正的主键无需我们关心具体的值,它会自动网上增长。

     

    现在我们创建数据表,并且表里边有主键字段。

    CREATE TABLE `book` (

    `id` int(11)  primary key  auto_increment,

      `name` varchar(32) default NULL,

      `price` int(11) default NULL,

      `publish` varchar(64) default NULL,

      `author` varchar(16) default NULL

    ) ENGINE=InnoDB DEFAULT CHARSET=utf8

    Primary key: 表示当前字段是主键

    Auto_increment: 主键值会自动增长

     

    Insert  into  book   values  (null, 'Php入门','60','清华出版社',' 韩顺平');

    //匹配数据表全部字段,包括主键(null表示)

    //单域值 的顺序是数据表 字段的顺序,不要写乱了。

    Insert  into  book   values  (null, 'javascript巧妙用法','89','北大出版社',' 古龙');

    Insert  into  book  (publish,author ,name)  values  ('铁道出版社','琼瑶', 'css3.0特性介绍');

    //设置具体字段信息,可以不用考虑主键

    //字段顺序可以自定义安排

    Insert  into  book   values  (null, 'html精通','30','清华出版社',' 韩顺平');

    Insert  into  book   values  (null, 'linux常用命令','95','北大出版社',' 古龙');

    Insert  into  book  (name,publish,author)  values  ('jquery高级用法','铁道出版社','琼瑶');

     

    主键是唯一的,不允许重复

     

    我们使用未被占用的主键,后边的主键值在此自动增长。

     

    添加信息记录的“单域值”没有全部匹配上“字段”的数目。

    注意:

    如果一个数据表有主键,我们不用关心它的值,主键的值会自动增长并赋予。

    主键是唯一的,不允许重复主键值存在

    我们可以使用未被占用的主键。之后的主键值会在此基础上自定增长。

    原则上每个数据表都有一个主键。

    总结:

           Mysql数据库记录的“增”、“删”、“改”、“查”

           增加insert

           删除delete

           修改update

           查询select

           修改、查询、删除: 可以使用where限制条件

           增加:可以增加全部字段信息、也可以增加指定字段信息。

           Where 条件设置 多个条件使用and进行连接

           Update修改:如果同时修改多个字段信息,中间使用”,”逗号连接

           主键使用。

    1. 登陆数据库

       mysql -h主机名  -u用户名  -p密码

     

    2. 查询当前数据库管理系统有多少数据库存在

       show databases;

     

    3. 进入具体数据库/使用具体数据库

       use 数据库名字;

     

    4. 查询当前数据库数据表的情况信息

       show tables;

     

    5. 创建数据库

       create database 库名;

     

    6. 删除数据库

       drop  database  库名;

     

    7. 创建数据表book

       书名name  价格price  出版社publish  作者author

       create table book(

           字段  类型,

           字段 类型,

       )

       数据类型:int整型   varchar(长度)

       create table book(

           name varchar(32),

           price int,

           publish varchar(64),

           author  varchar(16)

       );

     

       create table author(

           name varchar(32),

           age int

       );

     

    8. 删除数据表

       drop table 表名;

     

    mysql> #查看数据库

    mysql> show databases;

    +--------------------+

    | Database           |

    +--------------------+

    | information_schema |

    | library            |

    | mysql              |

    | test               |

    +--------------------+

    4 rows in set (0.00 sec)

     

    mysql> #查看数据表

    mysql> show tables;

    +-------------------+

    | Tables_in_library |

    +-------------------+

    | author            |

    | book              |

    +-------------------+

    2 rows in set (0.00 sec)

     

    mysql> #创建数据库

    mysql> create database shop;

    Query OK, 1 row affected (0.00 sec)

     

     

     

    ü  Mysql  -h主机名  -u用户名  -p密码  (登陆mysql数据库)

    ü  Show  databases;  (查看有多少数据库可供使用)

    ü  Use  数据库名字; (进入数据库、使用数据库)

    ü  Create  database  数据库名字;  (创建数据库)

    ü  Drop  database  库名;     (删除数据库)

    ü  Create  table  (

    字段  类型,

    字段  类型

    。。。

    ü  )     (创建数据表)

    Drop  table  表名;  (删除数据表

  • 相关阅读:
    Redis基础学习(三)—Key操作
    Redis基础学习(二)—数据类型
    Redis基础学习(一)—Redis的安装
    Bootstrap基础学习(二)—表单
    Bootstrap基础学习(一)—表格与按钮
    List去除重复的元素
    jQuery 将表单序列化为Json对象
    SpringMVC基础学习(三)—参数绑定
    CentOS 7.1安装Elasticsearch和Storm
    Python多线程中join函数与setDaemon函数使用说明
  • 原文地址:https://www.cnblogs.com/qingqingzou-143/p/7069757.html
Copyright © 2011-2022 走看看