首页 > 代码库 > php学习day9---数据库的基本知识

php学习day9---数据库的基本知识

    今天主要学习了mysql的基本知识。

一、数据库的介绍

  1.数据库的分类 

     要学习数据库我们首先要明白什么是数据库,数据库也就类似一个仓库,可以储存大量不同的数据,DBMS系统,全名database management system  是数据库管理系统,是一个管理数据的软件,安装了数据库软件的的电脑就是数据库服务器,端口默认为3306,数据库服务器,提供数据的更新,管理,安全事务等方面的功能。

     数据库根据结构的不同可以分为三种:层次数据库、网状数据库、关系数据库。当然,目前最流行的数据库就是关系数据库。

    几个数据库的相关概念:

    data:数据

    database:数据库,用于储存数据类似于一个大的文件夹。

    dbms:数据库管理系统 ,比如mysql,oracle等等 

    table:数据表,用来存放数据,拥有行和列。类似于文件中的文件。

    row:记录,数据表中的一条记录,也就是一行数据。

    field:字段,是列  数据表中的一列数据。

  2.主流的数据库

      目前在市面上最流行的几大数据库分别是:

        Access:是微软的小型数据库

        SQLsever:微软的中型数据库

        Oracle:美国甲骨文公司的产品,大型或者超大型。

        MySQL:瑞典ab公司的产品,后来被甲骨文收购,中小型网站应用,开源。

    SQL:这是关系数据库的标准语言,STRUCT QUERY LANGUAGE(结构化查询语言)

    关系数据库的特点是:表与表之间的数据可以建立一定 的“对应关系”。如下图:

          技术分享

  3.数据库的基本操作流程

     首先,建立与数据库之间的连接。

    其次,客户端向服务器发送sql命令,服务器端执行命令,并返回执行结果

    最后,客户端接受结果显示并断开连接。

 

二、数据库的基本语法

  1.启动数据库

    数据库的启动方法

    以命令行的方式:

                 启动:net  start  mysql

          关闭:net  start  mysql

    如下图:

                   技术分享

      当然要注意:如果想在全局路径上使用的话需要配置自己的环境变量。

    服务模式:控制面板-》管理工具-》服务-》mysql-》停止/启动

  2.退出/登录数据库

    登录数据库:

          mysql -h服务器地址 -u登录名 -p登录密码;

          mysql --host=服务器地址 --user=用户名 --port=端口 --password

    退出: quit; exit;

    注意:在登录数据库之后一定要使用“set names gbk”来设定当前连接数据库的环境编码,即当前跟数据库打交道的客户端的本身的编码。

                      技术分享

  3.数据库的备份和恢复

    备份:就是将一个数据库,完整的转换为一个可以随时携带和传送的文件

    备份的方法:

          mysqldump -h服务器地址 -u登录名 -p  数据库名>文件名

      技术分享

 

     恢复备份:将一个备份之后的数据恢复到数据库

        mysql  -h服务器地址  -u登录名   -p   数据库名 < 文件名

      技术分享

 

    注意:这两个命令,都是在没有登录mysql的时候使用,其中mysqldump命令还需要在管理员身份打开,通常恢复,就是指恢复原来数据库中的所有表数据信息及其它信息,表明可以是新名字。

  4.基础语法规定

    注释:

      注释有三种:

        单行注释 :#  注释内容

        单行注释: -- 注释内容(--后有一个空格)

        多行注释:/*注释内容*/

    语句行:

      默认情况下,以一个英文分号作为一条语句的结束,而且常规操作中,都是一次执行一条语句。

    大小写:

      mysql语言背部本身不区分大小写;

      mysql的某些命令执行会生成文件夹,此时可能要区分大小写;

    命名问题:

      可以自己命名的名字称作标识符。

      命名建议与php命名相同,字母数字下划线,并不以数字开头。

      非常规字符或系统关键字虽然可以作为标识符使用,但最好要包在反引号(数字1左边那个反撇 ` )中,并且不推荐。

三、数据库定义语句

  1.创建数据库

      在连接数据库服务器之后,我们需要进行创建数据库,当然数据库的创建语法如下:

        create database  db_name [charset ut8];

        技术分享

 

  2.删除数据库

      我们既然可以创建数据库,那么我们也可以删除数据库,删除数据库的语法是:

        drop  database   【if exists】 db_name;

        技术分享

  3.修改数据库

      通常我们修改数据库,只修改两项:

        修改编码;

        修改排列顺序;

      语法:

        alter  database  数据库名   charset  新的编码名   collate  新的排序规则名

      技术分享

 

  4.进入数据库

     语法:

      use  数据库名称

         技术分享

四、php操作数据库的基本函数

  在php中完成相关数据库的操作,首先要执行以下代码:

    $link = mysql_connect("数据库服务器地址","用户名","密码");

    mysql_query("set names utf8");//也可以使用mysql_set_charset("");

    mysql_query("use  数据库名称");//也可以使用mysql_seleck_db("");

  然后,才开始正式执行要完成的数据库操作任务(语句):

    $result  =  mysql_query(“select /  delete  /update  / insert  /  desc  /  show  tables  /drop  .......”);

技术分享

    补充:

      mysql_error();  获取执行错误时的失败信息

      mysql_query();

     对于mysql_query()这个函数,可以执行几乎任何sql语句,在执行语句时可以分为两种情况。

     1.执行时返回全是布尔值的:(其返回结果都是布尔值)比如:

     insert,  update,  delete, create table,  create database ,drop ...执行成功返回true,执行失败返回false;

     2.执行时返回有数据:(执行失败返回false,成功返回结果集)比如:

      $result = mysql_query(“select ... “);

     while (  $rec  =  mysql_fetch_array( $result )  ){

      //mysql_fetch_array()会取出该结果集中的“一行数据”,并取得该行数据后赋值给$rec

      //$rec就是一个数组,其下标就是字段名;

      //在此while循环中,mysql_fetch_array()会一次次(一行行)取出结果集中的所有数据;

      然后,在这里就可以处理该数组$rec了:

     }      

    $n1 = mysql_num_rows(结果集); //获得该结果集的数据行数;

    $n2 = mysql_num_fields(结果集); //获得该结果集的数据列数;

    $name = mysql_field_name(结果集, $i ); //获得结果集的第i个字段的名字!i0开始算起。

     明天继续。

php学习day9---数据库的基本知识