八重齒

八重齒之夢

MySQL基本知识

1、数据库(MYSQL)
    数据库(Database)是按照数据结构来组织、存储和管理数据的建立在计算机存储设备上的仓库。
    数据库分为:关系型数据库(RDBMS)、非关系型数据库(nosql)
    所谓的"关系型"可以理解为"表格"的概念, 一个关系型数据库由一个或数个表格组成
2、sql分类
    SQL一共分为四类:
        DDL(数据定义语言)
        用于数据库表、视图、索引等创建,主要包含:CREATE、ALTER、DROP、TRUNCATE 、 COMMENT 、 REPLACE等
        DML(数据操作语言)
        用于对数据库中数据的操作,主要包含:SELECT 、UPDATE 、DELETE 、INSERT、MERGE 、CALL 、EXPLAIN PLAN 、LOCK TABLE等
        TCL(事务控制语言)
        用于数据库的事务操作,主要包含:COMMIT 、ROLLBACK等
        DCL(数据控制语言)
        用于数据库授权、角色控制等,主要包含:GRANT等
    注意:数据库用的最多的东西就是对数据库的:增,删,改,查。
3、命令:
    启动mysql:
        net start mysql[服务名]    不区分大小写

    关闭:
        net stop mysql[服务名]     不区分大小写

    1)创建数据库
        create database + 数据库名;
    2)查看数据库
        show databases;
    注意:MySQL语句以分号(;)作为语句的结束, 若在语句结尾不添加分号时,
         命令提示符会以 -> 提示你继续输入(有个别特例, 但加分号是一定不会错的);
    3)使用对应的数据库
        use + 数据库名;
    4)查看当前数据库中存在的表有哪些
        show tables;
    5)创建新的表
        create table + 表名(
                    表的内容,比如列名,列的数据类型 数据长度 是否为空 主键 默认值 等等
                   )
        例子:
            create table students(
                id int not null auto_increment primary key,
                name char(8) not null, sex char(4) not null,
                age tinyint not null,
                tel char(13) null default "-");

    约束:
            主键约束 primary key
                自增约束 auto_increment
            非空约束 not null;
                唯一约束  unique
            默认约束 default
                K:age int default 18
            检查约束
                check (条件)
                使用enum[枚举数据类型来做值得判断]("值1","值2",...)
                
            外键:
                FOREIGN KEY (当前表的外键字段) REFERENCES 关联表(关联表的主键)
                在一对多|多对一的关系中 外键 加在 多方上
                     建立主外键的前提:数据类型和长度要一致

            例子:
                班级表  class_id
    
                学生表:id name age sex address class_id
                    


    6)展示表的结构
        desc + 表名;

    7)增加列:
        alter table 表名 add 列名 列数据类型 [after 插入位置];
        注意:after 是指定添加到某列的后面
        例子:
            alter table students add birthday date after age;
    
    8)修改列:
        alter table 表名 change 旧列名称 新列名称 新数据类型;
    
    9)删除列:
        alter table 表名 drop 列名称;
    
    10)重命名表:
        alter table 表名 rename 新表名;
        RENAME TABLE 旧表名 TO 新表名

    11)删除整张表:
        drop table 表名;
    
    12)删除整个数据库:
        drop database 数据库名;

    13)修改表的字段的数据类型:
        alter table 表名 modify 修改的字段名 目标数据类型(长度);
    
    14)建表完成后增加主键
        alter table 表名 add  primary key (字段) ; 添加主键

    15)建表完成后添加外键
        Alter table 表名 add constraint foreign key  
        外键名(字段) references 主表(字段);
        例子: alter table student add constraint foreign key(name) references class(name);

    16)删除主键
        Alter table tb change id id int(10);//删除自增长

          Alter table tb drop primary key;//删除主建

    17)删除外键
        alter table 表名 drop  foreign key 外键名(不是字段列名)

    18)删除唯一
        alter table 表名 drop index 字段名;
        
    19)在已有的字段上面添加自增  (UNIQUE必须要 唯一性)
        ALTER TABLE 表名 CHANGE 字段名 字段名 字段类型 AUTO_INCREMENT UNIQUE;
        
    20)给已经建好的表加上唯一性约束
        ALTER TABLE `t_user` ADD unique(`username`);
    
    注意:drop的删除针对数据库和表格,delete是针对表格里面的具体内容来说的。

    注意:删除主外键的时候,要先删除表的外键,然后再去删除关联的表的主键。

    查询外键名:show create table 表名

4、数据类型

    数值型:

        tinyint  小整数型  范围(-128,127)
    
        smallint 大整数型  范围(-32768,32767)

        mediumint 大整数类型     (-8 388 608,8 388 607)
            
        int  大整数型    (-2 147 483 648,2 147 483 647)   重点常用的
    
        float 单精度浮点型  重点常用的

        double 双精度浮点型 重点常用的

    日期和时间类型:
    
        date 日期型  格式:YYYY-MM-DD   范围 1000-01-01/9999-12-31

        time 时间值或持续时间  格式:HH:MM:SS   范围:'-838:59:59'/'838:59:59'

        datetime  混合日期和时间值  格式:YYYY-MM-DD HH:MM:SS    范围:1000-01-01 00:00:00/9999-12-31 23:59:59

    字符串类型:
        
        char    定长字符串  0-255字节   不足用空格补足
        
        varchar 变长字符串  0-65535 字节   重点  常用   不足的不会用空格补足  超出长度则会截断  一般的字符串选择 varchar

        text    长文本数据  0-65 535字节  超长的字符串选择text

阅读更多
文章标签: mysql 数据库
个人分类: mysql
上一篇java 运用反射,模拟类似Struts2的参数注入
下一篇MY SQL 多表查询
想对作者说点什么? 我来说一句

关于MYSQL的一些基本知识

2009年03月11日 42KB 下载

MySQL网络数据库指南

2008年12月22日 13.08MB 下载

MySQL入门很简单.pdf

2013年12月18日 5.39MB 下载

没有更多推荐了,返回首页

关闭
关闭