初识MySQL

#查看数据库
SHOW DATABASES;#选中一行或者多行,点击左上角的运行按钮

#删除kj11_day01数据库(判断数据库是否存在:if exists)
DROP DATABASE IF EXISTS kj11_day01;

#创建kj11_day01数据库(判断数据库如果不存在则创建:if not exists)
CREATE DATABASE  IF NOT EXISTS `kj11_day01`CHARACTER SET utf8 COLLATE utf8_bin;

#切换数据库(关键词:use(库名))
USE kj11_day01;
#删除表
#drop table if exists student;
/*
结构化查询语句:
DDL:数据定义语言
DML:数据操作语言
DQL:数据查询语言
DCL:数据控制语言
*/
/*
列类型包括:
1.数值类型:
    1)tinyint:非常小的数据        1字节
    2)smallint:较小的数据        2字节
    3)mediumint:中等大小的数据    3字节
    4)int:标准整数            4字节
    5)bigint:较大的整数        8字节
    6)float:单精度浮点数        4字节
    7)double:双精度浮点数        8字节
    8)decimal:字符串形式的浮点数    m个字节
2.字符串类型
    1)char[(M)]:固定长度字符串0<=M<=255    M字符
    2)varchar[(M)]:可变字符串0<=M<=65535    变长度
    3)tinytext:微型文本串            2的八次方-1字节
    4)text:文本串                2的十六次方-1字节
3.日期和时间型数值类型
    1)DATE:YYYY-MM-DD,日期格式            取值范围:1000-01-01~9999-12-31
    2)TIME:Hh:mm:ss ,时间格式            取值范围:-838:59:59~838:59:59
    3)DATATIME:YY-MM-DD hh:mm:ss日期+时间格式     取值范围:1000-01-01 00:00:00~9999-12-31 23:59:59
    4)TIMESTAMP:YYYYMMDDhhmmss格式表示的时间戳    取值范围:197010101000000 ~2037年的某个时刻
    5)YEAR:YYYY格式的年份值                取值范围:1901~2155
4.null值
    1)理解为“没有值”或“未知值”
    2)不要用NULL进行算术运算,结果仍为NULL
常用列类型:
    1.tinyint:非常小的数据
    2.int:标准整数    
    3.double:双精度浮点数
    4.char[(M)]:固定长度字符串0<=M<=255
    5.varchar[(M)]:可变字符串0<=M<=65535
    6.text:文本串    
    7.DATATIME:YY-MM-DD hh:mm:ss日期+时间格式 
*/
/*
数据字段属性:
UNSIGNED
    1)无符号的
    2)声明该数据列不允许负数
ZEROFILL
    1)0填充的
    2)不足位数的用0来填充,如 int(3),5则为 005
AUTO_INCREMENT
    1)自动增长的,每添加一条数据,自动在上一个记录数上加1
    2)通常用于设置主键,且为整数类型
    3)可定义起始值和步长
NULL 和 NOT NULL
    1)默认为NULL,即没有插入该列的数值
    2)如果设置为NOT NULL,则该列必须有值
DEFAULT
    1)默认的
    2)用于设置默认值
*/
/*
数据表类型:
1.MyISAM
    1)事务处理:    不支持
    2)数据行锁定:    不支持
    3)外键约束:    不支持
    4)全文索引:    支持
    5)表空间大小:    较小
2.InnoDB
    1)事务处理:    支持
    2)数据行锁定:    支持
    3)外键约束:    支持
    4)全文索引:    不支持
    5)表空间大小:    较大,约两倍
使用MyISAM:   节约空间及相应速度
使用InnoDB:     安全性,事务处理及多用户操作数据表
InnoDB类型数据表只有一个*.frm文件,数据文件为上一级目录的 ibdata1 文件
MyISAM类型数据表对应三个文件:
   *.frm  --  表结构定义文件
   *.MYD  --  数据文件
   *.MYI  --  索引文件
*/
/*
CHARSET  =  utf8;修改数据表字符集
数据表创建方法:
    CREATE   TABLE [ IF NOT EXISTS ]    `表名`   (
    `字段名1`    列类型 [ 属性 ]  [ 索引 ] [注释] ,
    `字段名2`   列类型 [ 属性 ]  [ 索引 ] [注释] , 
    … …    
    `字段名n`   列类型 [ 属性 ]  [ 索引 ] [注释] 
    )[  表类型 ] [ 表字符集 ] [注释] ;
模拟:
    CREATE TABLE IF NOT EXISTS `student`(
    sid INT(11) NOT NULL AUTO_INCREMENT,
    sname VARCHAR(50) COLLATE utf8_bin NOT NULL COMMENT '学生姓名',
    score DOUBLE NOT NULL,
    # 主键 唯一插入的时候不能重复的学生sid
    PRIMARY KEY(`sid`)
    )ENGINE =INNODB CHARSET=utf8 COLLATE=utf8_bin COMMENT'学生名单';
*/
/*
删除数据表: DROP  TABLE  [ IF  EXISTS ]   表名
*/
#创建student表
CREATE TABLE IF NOT EXISTS `student`(
sid INT(11) NOT NULL AUTO_INCREMENT,
sname VARCHAR(50) COLLATE utf8_bin NOT NULL COMMENT '学生姓名',
score DOUBLE NOT NULL,
# 主键 唯一插入的时候不能重复的学生sid
PRIMARY KEY(`sid`)
)ENGINE=INNODB CHARSET=utf8 COLLATE=utf8_bin COMMENT'学生名单';

#查看数据库中存在的表
SHOW TABLES;
#修改表名
ALTER TABLE student RENAME AS deathlist;
#查看表
SHOW TABLES;
#查看表描述的信息
DESCRIBE deathlist;
#插入一条记录
INSERT INTO deathlist(sid,sname,score) VALUES (100,'龙傲天',100.0);
#测试再加一条记录
INSERT INTO deathlist(sid,sname,score) VALUES (101,'蛮美美',88.0);
#查看表记录的信息
SELECT * FROM deathlist;
#添加字段
ALTER TABLE deathlist ADD xinbie VARCHAR(2);
#修改字段的属性类型
ALTER TABLE deathlist MODIFY score INT(20);
DESCRIBE deathlist;
#修改字段的字段名和属性提供默认值    关键词:default(默认值)
#设置一个约束选择不是男就是女
ALTER TABLE deathlist CHANGE xinbie sex CHAR(2) DEFAULT'男';
DESCRIBE deathlist;
#自增
INSERT INTO deathlist(sname,score) VALUES ('张三',78.0);
SELECT * FROM deathlist;
#删除字段
ALTER TABLE deathlist DROP sex;
SELECT * FROM deathlist;


 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值