• 数据库的基础知识


    1.准备工作:

    在xammp的集成包中,打开是mysql的时候出现了端口的冲突

       原因:之前安装系统的时候没有C盘中还有mysql、

       解决的方法是:卸载之前的mysql,使用默认的端口3306

    2.数据库根据结构的不同可以分为三种层次数据库网状数据库关系数据库

        目前最流行的数据库就是关系数据库。

        几个数据库的相关概念:

        data:数据

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

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

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

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

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

    3.数据库的操作的流程

         (1)打开数据库,建立和数据库的链接

        

    $conn=mysql_connect("localhost","root","");//默认的地是localhost
    //这是一个链接数据库的函数,成功的话就会返回一个TURE,反之就会返回false

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

           

      mysql_select_db("myapp",$conn);//选择要操作的数据库
        $result=mysql_query("SELECT * FROM students");//执行数据库语句

       (3)客户端接受结果显示并断开连接

       

    $result_arr=mysql_fetch_assoc($result);//得到执行语句的内容
     print_r($result_arr);//将收集到的数据库内容打印出来
     mysql_close($this->conn);//这是一个关闭数据库的函数
    <?php
    header("Content-type:text/html;charset=utf-8");
    $conn=mysql_connect("localhost","root","");
    //这是一个链接数据库的函数,成功的话就会返回一个TURE,反之就会返回false
    if($conn)
    {
        //echo "连接成功";
        mysql_query("SET NAMES 'utf8'"); //使用这一行代码可以让读取表格的中文不再是乱码
        mysql_select_db("myapp",$conn);//选择要操作的数据库
    //mysql_query("INSERT INTO `myapp`.`students` (`id`, `name`, `age`) VALUES ('1440520179', '陈颖华', '21');")
    
        $result=mysql_query("SELECT * FROM students");
        $result_arr=mysql_fetch_assoc($result);
        print_r($result_arr);
    }
    else {
        echo "连接失败";
    }
    
    ?>

    4.  简单的数据库操作

    (1)以命令行的方式:

                     启动:net  start  mysql

              关闭:net  stop  mysql(前提是已经配置好了mysql的环境)

     

    5..退出/登录数据库

        登录数据库:

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

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

                         退出: quit; exit;

     6.数据库的备份和恢复:

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

        备份的方法:

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

    7.创建数据库

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

            create database  db_name [charset ut8];

            

     8.删除数据库

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

            drop  database   【if exists】 db_name;

            

    9.修改数据库

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

            修改编码;

            修改排列顺序;

          语法:

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

          

    10.进入数据库

         语法:

          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个字段的名字!i从0开始算起

  • 相关阅读:
    理解maven命令package、install、deploy的联系与区别
    Mybatis中传参包There is no getter for property named 'XXX' in 'class java.lang.String'
    Spring boot 外部资源配置
    配置spring boot 内置tomcat的accessLog日志
    spring使用@Value标签读取.properties文件的中文乱码问题的解决
    使用Lombok简化你的代码
    统计mysql数据库中数据表/字段等数量的sql
    Kettle
    Python内置函数(39)——locals
    Python内置函数(38)——list
  • 原文地址:https://www.cnblogs.com/zhengweizhao/p/6514718.html
Copyright © 2020-2023  润新知