rdbms:

   1、数据库的建立删除

   2、表单的创建、删除、修改

   3、索引的创建和删除

   4、用户和权限

   5、数据的增删改

   6、查询

DML:数据操作语言

   INSERT REPLACE DELETE UPDATE

DDL:数据定义语言

   CREATE DROP ALTER

DCL:数据控制语言

   GRANT REVOKE

   SELECT


数据库管理系统:

   Oracle Sybase Infomix

   Mysql EnterpriseDB

DBMS:

   数据管理独立性

   有效的完成数据读取

   保证数据的完整性和安全性

   数据集中管理

   并发存储和故障恢复

   减少应用程序的开发时间

SQL:ANSI

   sql86 sql89 sql92 sql99


   SQL命令: 


   分析器    计划执行器

   优化器    

      文件的存取方法<——————磁盘          故障恢复管理器

        缓存器                         事务管理器

      磁盘空间管理器 ——————> 磁盘         锁管理器

  

软件包的格式:

   软件包管理器特有的格式

   通用二进制格式

   源代码

rpm包:mysql mysql-server

二进制程序:mysql

           -u 指定用户名

           -p 指定密码

           -h 指定mysql-server

           用户名:user@host  user和允许该user在哪个host上,连接mysql-server

           如果客户端和服务器位于同一台主机,那么c/s通信协议

               linux:socket  /var/lib/mysql/mysql.sock

               windows:memory

        quit:退出

        mysqld

tcp:3306 user:mysql group:mysql

安装位置: /var/lib/mysql/

mysql初始化:建立mysql数据库,保存DBMS的元数据信息。


mysql:是交互式客户端,两种工作模式。

    交互式模式

    批处理模式

交互式模式命令类别:

    客户端命令

          USE 数据库名  //设定默认数据库

    服务器端命令:必须使用语句结束符,默认是分号。

关系数据库对象:

    表

    索引

    视图

    约束

    存储过程

    存储函数

    触发器

    游标

    用户

    

    权限

    事务

表:行、列

   表:实体

   行:row

   列:field  column

     字段名称  数据类型  类型修饰(约束)

             字符

                CHAR(n)   //最大256个字符

                VARCHAR(n) //最大65536个字符

                BINARY(n) //区分大小写

                VARBINARY(n)

                TEXT(n)  //文本大对象

                BLOB(n) //区分大小写大对象

             数值

                精确数值

                     整型

                        TINYINT

                        SMALLINT

                        MEDIUMINT

                        INT

                        BIGINT

                            修饰符 UNSIGNED 

                                 NOT NULL

                     十进制

                         DECIMAL

                近似数值

                     FLOAT

                     DOUBLE

             日期时间

                DATE

                TIME

                DATETIME

                STAMP

                

             布尔

             内置 

                ENUM

                SET

DCL:

  SELECT

  GRANT

     GRANT pri1,pri2.... ON DATABASE.TABLE TO 'username@host'

  REVOKE

     REVOKE pri1,pri2.... ON DATABASE.TABLE FROM 'username@host'

  CREATE USER 'username'@'host' IDENTIFIED BY 'password';

  DROP USER 'username'@'host';

        host: ip

            hostname

            network

            通配符

               _:匹配任意单个字符

               %:匹配任意长度的任意字符

DDL:

  CREATE  

        CREATE DATABASE dbase_name;

        CREATE TABLES tbase_name(col1,col2....);

  ALTER

        ALTER TABLE tb_name

           MODIFY

           CHANGE

           ADD

           DROP

  DROP   

        DROP DATABASE dbase_name;

        DROP TABLE tb_name;

DML:

  INSERT

     INSERT INTO tb_name (col1,col2...) VALUE ('', , ),('', , );

  UPDATE

     UPDATE tb_name SET col1=value WHERE col2=value;

  DELETE

     DELETE FROM tb_name WHERE

选择

     SELECT 字段 FROM tb_name WHERE

查看库中的表: SHOW TABLES FROM db_name;

查看biao的结构:DESC tb_name;

查看用户授权:SHOW GRANTS FOR 'username'@'host'

选择和投影

选择:指定以某字段为搜索码,进行逻辑比较,筛选符合条件的行;

    选择行  用WHERE指定筛选条件

     

投影:遮住某些字段

    选择列