• MySQL数据库的知识


    最近学习SQL数据库,以下是我对SQL的总结,有什么不足之处欢迎指出!

     数据库文件

    数据库最多可以存32767个数据文件和32767日志文件

    数据库文件可分为:主文件,次要文件,日志文件

                                     作用                              扩展名(简称)  

    主文件:    存储数据,启动信息                         mdf                           有且仅有一个

    次文件:    存储主文件为存储的数据                  ndf                           可以有多个,可有可无

    日志文件:   记录操作信息                                   ldf                           有且仅有一个

    数据库的三大范式 :

    1。第一范式(1NF):最基本的范式

    表中的 每个属性不可再分(不允许属性以集合,数组的形式存储)

    2。第二范式(2NF

    在1NF的基础上,添加主键(主属性)

    缺陷:可能出现数据冗余,不一致

    3。第三范式(3NF)

    在2NF的基础上,接触非主属性的依赖关系

    数据库可分为三部分:

    数据库操作语言:DML (Data Manipulation Language )

    数据库定义语言:DDL(Data Definition Language)

    数据控制语言:DCL(Data Contorl Language)

    SQL语句规范

    1.以分号(,)结尾

    2.SQL语句对大小不敏感,即不区分大小写(PS:插入到表格中的数据区分大小写,即"HI","hi"不同)

    一。DDL管理数据库语句:

     创建数据库

    create    datebase  数据库名

    create database test;

    创建表数据库

    1.create table 表名(列名1  数据类型  约束....);

    create table person

    (name   char(20)    not null,

      age    int,          

      id     char(20) primary key

    );

    2.create database 数据库名称

    create database test;

    使用数据库

    use test;

    查询表结构

    sp_help;

    alter 修改数据,添加,删除数据

    1.在已有的表中添加新的列

    alter table table_name add   column_name  typename

    alter table  person add  birthday date;

    2.修改已有的表中的列名的数据类型

    alter table table_name alter column column_name typename

    alter table person alter column birthday year;

    ps:将列birthday的数据类型改为year

    3.删除表中的已有的列

    alter   table    table_name   drop column column_name

    alter table  person  drop column  birthday;

    ps:删除表中的列对表结构产生影响

    drop 删除数据

    1.drop  database  数据库名称

    drop database test;

    2.drop table table_name

    drop table person;

    ps:数据库中drop是对表结构产生影响

    二.DML 数据操作语言    对表中的数据进行操作

    ps:主要的操作在这个地方

    select语句

    1.select  字段名  from table_name

    select  name from person;

    2.查询所有数据

    select * from person ;

    insert语句

    1.insert   into  表名  values   (值1,值2...)

    insert int person  values('张三',20,'江苏南京')

    update语句

    update 表名 set    列名=新值   where   列名=某值

    update person set  name='李四'   where   id='江苏南京'

    delete 语句

    1.delete  from 表名  where 列名=值

    delete from person where name='张三';

    2.删除所有的数据

    delete  from table_name

    delete *  from person

    或  delete from  person

    ps:删除表中所有的数据,但是表还存在,可以继续往里存储数据

    distinct语句

    select distinct  列名称     from  表名称

    select distinct   '江苏南京'  from  person

    ps:去重,去重相同 "江苏南京"   的地址,只显示一次

    sql约束

    PS:用于限制加入表的数据的类型

          主键非空且唯一

    1.主键约束 (primary key)简称PK

    2.外键约束(foreign  key ) 简称 FK

    3.非空约束(not   null)简称NN

    4.唯一约束(unique)简称UK

    5.检查约束(check)简称CK

    6.默认约束(default)

    模糊查询

    select  *  from   person   where   name  like '张%'

    查找一个姓张的人

    %   任意字符

    _    任意一个字符

    {}    在范围内的一个字符

    {^}  不在范围内的一个字符

  • 相关阅读:
    codeforces 1140D(区间dp/思维题)
    区间dp之四边形不等式优化详解及证明
    poj1947
    hdu4044
    poj1155
    poj3162(树形dp+优先队列)
    hdu4003详解(树形dp+多组背包)
    poj1947(树形背包)
    hdu1011(树形背包)(提供一个特殊样例)
    CopyOnWriteArrayList总结
  • 原文地址:https://www.cnblogs.com/ds-123/p/10168960.html
Copyright © 2020-2023  润新知