MySQL(一)

一,概述

1,什么是数据库?

存储数据的仓库

2,什么是MySQL?

是用于管理文件的一个软件

    -服务端软件

      socket服务端

      本地文件ed操作

      解析指令【SQL语句】

    -客户端软件(很多种类的)

      socket客户端

      发送指令

      解析指令【SQL语句】

    其他类似软件:

      关系型数据库:sqllite,db2,oracle,access,SQL,sever MySQL,MySQL

      非关系型数据库:mongoDB,redis

二,MySQL下载安装

    Windows:

      1,下载地址:

        http://dev.mysql.com/downloads/mysql/

      2,下载文件:

        MySQL Community Server 5.7.18

      3,解压到你想安装MySQL的目录下,

        如:E:mysqlmysql-5.7.18-winx64

      4,初始化:MYSQL解压后的bin目录下有一堆的可执行文件。切换到bin目录下执行:

        cd E:mysqlmysql-5.7.18-winx64in

        mysqld  --initialize-insecure

      5,启动MySQL服务

        执行命令从而启动MySQL服务

        cd E:mysqlmysql-5.7.18-winx64in

      6,客户端连接:

        E:wupeiqimysql-5.7.16-winx64mysql-5.7.16-winx64inmysqldmysql -u root -p 

      7.环境变量的配置:

        E:wupeiqimysql-5.7.16-winx64mysql-5.7.16-winx64in

      8,注册成服务之后,以后再启动和关闭MySQL服务时,仅需要执行如下命令:

        #启动MySQL服务

          net start mysql

        #关闭MySQL服务

          net stop mysql

三,数据库操作

  -数据库【文件夹】

    -表【文件】

       -行【数据行】

  他们三者是层级的关系表(文件)在数据库(文件夹)下面,

            行(数据行)在表(文件)下面

1,查看数据库

  show databases;

2,使用数据库:

  use  数据库的名称;

3,创建数据库:

  create database db2(数据库名称) default charset utf8;

4,创建用户:

  create user 'alex'@'192.168.1.%' identified by '123123';

5授权管理

  grant all privileges  on db1.t1 to 'alex'@'%';

  取消授权:

  revoke all privileges on db1.t1 from 'alex'@'%';

四,数据表的操作

  1,查看表:

    show tables;

    2,创建表:

    create table t1(id int signed not null auto_increment primary key,

            num decimal(10,5),

            name char(10)

             )engine=innodb default charset=utf8;

        3删除表:

    drop table 表名

   4清空表:

    delete from 表名      #清空当前的内容,id不会清空

    truncate table 表名  #完全清空文件的内容

五,表内容操作

    1,插入数据:

        insert into t1(id,name) values(1,'alex');

    2,删除行

        delete from t1 where id<6;

    3,修改行

        update t1 set age=18 where age=17;

    4,查看数据

        select * from t1;

六,主键和外键

  主键:一个自增列,必须要有主键。

    ,一种特殊的唯一索引,不允许有空值,如果主键使用单个列,则它的值必须唯一,如果是多列,则其组合必须唯一。

    auto_increment primary key,

  

  外键:一个特殊的索引,只能是指定内容

       creat table color(

            nid int not null primary key,

            name char (16) not null  )

       create table fruit(

            nid int not null primary key,

            smt char(32) null ,

            color_id int not null,

             constraint fk_cc foreign key (color_id) references color(nid) )

    

      

原文地址:https://www.cnblogs.com/fengwu007/p/6946306.html