Mysql_Note

MySQL:
1.创建数据库语法:
基本语法:    create database 数据库名称;
正宗语法:    create database 数据库名称 character set '编码' collate '校对规则';

crate database hello character set 'utf8';
2.查看数据库:
    1. show databases;  --查看所有数据库
    2. use [D_name];(*****)  --使用数据库
    3. show create database [D_name];  --查询数据库创建的信息
    4 select database(); --查询当前正在使用的数据库

3.删除数据库:
    1. drop database [D_name]; --删除数据库

4.修改数据库:
    1. alter database [D_name] character set 'gbk' collate '校对规则'

--------------------------------------    
创建表:
    1.create table [T_name](
    字段1 类型(长度) 约束,
    字段2 类型(长度) 约束,
    ...   ..   ..     ..
);  ---最后一个字段不能有逗号

注意:
    *如果不指定数据的长度,有默认值.int 类型默认长度是11
    *如果声明字符串类型,长度是必须指定的.
    *
例:
mysql - u root -p root
show databases;
use xxx;
create table emp(
    id int,
    name yarchar(30),
    gender char(5),
    birthday date,
    entry_data date,
    job varchar(50),
    sal double,
    resume text
);



数据库的数据类型:
    VARCHAR (用的比较多) :长度可变
例: name varchr(8),存入数据hello,存入后,name字段长度自动变成了5.

    CHAR : 长度不可变
例: name char(8) 存入数据hello,用空格来不全剩余的位置.

大叔据类型:(不常用)
    BLOB :字节(电影 mp3)
    TEXT :字符(文本内容)
数值型:
    TINYINT,SMALLINT,INT,BIGINT,FLOAT,DOUBLE
逻辑型:
    BIT
    在Java中是true或者flase
    在数据库bit类型(0或1)    
日期类型(重点)
    DATE  :只包含日期(年月日)
    TIME  :只包含时间(时分秒)
    DATETIME  :包含日期和时间.如果插入数据的时候,字符值为空,字段的值就是空了.
    TIMESTAMP :包含日期和时间.如果插入数据的时候,设置字段的值为空,默认获取当
    前的系统的时候,把时间保存到字段中

单表约束
    1.好处:保证数据的完整性
    2.主键约束:(重要) 代表记录的唯一标识    
      *关键字:primary key 通过关键字声明某一列为主键
      *唯一     值不能相同
      *非空     值不能为空
      *被引用   和外键一起来被引用
    3.唯一约束
        声明字段值是唯一的,使用关键字 unique
    4.非空约束:
        声明字段的值是不能为空.not null


------------------------------------------------------------------
    删除和查看表
1.删除表:  drop talbe [T_name];
2.查看标签
    * desc [T_name];  --查询表的信息
    * show tables;    --查看当前数据库中所有的标签
    * show create table [T_name]; --查看表创建的信息
修改表:
    * alter table [T_name] add [新列名] [类型(长度)] [约束]; --添加列
    * alter table [T_name] drop [列名];  --删除列
    * alter table [T_name] modify [列名] [类型(长度)] [约束]; --修改列的类型或者约束
    * alter table [T_name] change [旧列名] [新列名] [类型(长度)] [约束]; --修改列名
    * rename table [T_name] to [New_T_name];   --修改表的名称
    * alter table [T_name] character set utf8; --修改表的字符集
---------------------------------------------------------------------
        数据库的数据(CURD)
插入数据(insert):
    1.添加数据,使用insert关键字
      * insert into 表 (字段1,字段2,字段3) values(值1,值2,值3);
      * insert into 表 values(值1,值2,值3,值4...);

    2.注意实现:
      * 插入的数据与字符数据的类型相同
      * 数据的大小应该在规定的范围内
      * 数据中的数据的列的位置和字段位置是相同的
      * 字符串和日期类型的数据,必须要使用单引号括起来

    3.向员工表中添加数据:
      insert into workers (name,age) values ('Lihua',26);
      insert into workers values ('LiHua',26);


插入中文数据乱码问题:
    修改mysql客户端的编码既可,改为GBK
    
---------------------------------------------------------------------

posted @ 2019-12-18 20:53  i0gan  阅读(221)  评论(0)    收藏  举报