mysql的一些操作

mysql数据类型
mysql支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。
1.整型:
.1.tinyint(m):1个字节 范围是(-128~127)
.2.smallint(m):2个字节 范围是 (-32768~32767)
.3.medidumint(m):3个字节 范围是 (-8388608~8388607)
.4.int(m):4个字节 范围是(-2147483648~2147483647)
.5.bigint(m): 8个字节 范围是 (+-9.22*10的18次方)
 
2.浮点数(float和double):
.1.float(m,d): 单精度浮点型 8位精度(4字节) m总字数,d小数位
.2.double(m,d):双精度浮点型 16位精度(8字节) m总字数,d小数位
注:
    设一个字段定义为float(5,3),如果插入一个数123.45678,实际数据库里存的是123.457,但总个数还以实际为准,即6位。
#必须精度时用双精度。
3.定点数:
浮点型在数据库中存放的是近似值,而定点类型在数据库中存放的是精确值。
decimal(m,d)参数m<65是总个数,d < 30 且 d < m 是小位数。
 
utf-8
一个英文字符等于一个字节,一个中文三个字节。
4.字符串(char,varchar,_text)
.1.char(n) :固定长度,最多255个字符
.2.varchar(n) :固定长度,最多65535个字符
.3.tinytexe :可变长度,最多255个字符
.4.text :可变长度,最多65535个字符
.5.mediumtext :可变长度,最多2的24次方-1个字符
.6.longtext :可变长度,最多2的32次方-1个字符
 
5.日期时间类型
.1.date :日期‘2008-12-2’
.2.time :时间‘12:25:36’
.3.datetime :日期时间‘2008-12-2 22:06:44’
.4.timestamp :自动存储记录修改时间
 
#timestamp  设计时间差的时候运用
6.数据类型bit
bit称为数据类型,其数据有两种取值:0和1,长度为1位。在输入0以外的其他值时,系统均把它们当1看待。这种数据类型常作为逻辑变量使用,用来表示真、假或是。否等二值选择。
#例句: bit  0and1
一般运用在判断 性别、真假。
——————————————————————————
数据类型的属性
.1.null :数据列可包含null值
.2.not null : 数据列不允许包含null值
.3.default : 默认值
.4.primary key : 主键
.5.auto_increment : 自动递增,适用于整数类型
.6.unsigned :无符号
.7.character set name : 指定一个字符集
 
#primary key 主键 又称 元首键 (主键不能为空)
#auto_increment 自动递增,永远跟随着“主键”,且只能有一个。
 
数据库类型的属性,重点是主键(primary key)和自动增长(auto_ubcrement),理解主键的含义。
 
主键的含义:
    表中的每一行都应该具有可以唯一标识自己的一列(或一组列),而这个承担标识作用的列表为主键。
    通俗点说,主键就相当于每一行的身份证。
如果没有主键,数据的管理将会十分混乱。比如会存在多条一模一样的记录,没有一个像身份证一样的主键,删除和修改将会十分困难。
 
——————————————————————————
命令行操作
1.查看数据库下有哪些表
输入:
show tables;
回车显示:
 
2.创建表
格式:
create table 表名(
    字符段名 数据类型 数据类型的属性,
字符段名 数据类型 数据类型的属性 default"备注"
);
#default"" 设置默认的意思,可有可无。
#“,”用来分割字符段。
输出:
create table classes(    
    id INT unsigned primary key auto_increment not null,   name varchar(30)  not null default '' 
);
回车显示:
表示创建成功。
 
3.修改表名
格式:
alter table 表名 rename to 新表名;
输入:
alter table classes rename to cool;
回车显示:
表示更改成功。
 
4.删除表
格式:
drop table 表名;
输出:
drop table cool;
回车显示:
表示删除成功。
 
5.查询表信息
格式:
select * from 表名;
输出:
select * from classes;
回车显示:
这是查询的表信息。
 
6.向表内插入数据
格式:
insert into 表名 values();
输出:
insert into classes values(0,'一年级'),(0,'二年级');
回车显示:
表示插入成功。
 
7.删除数据(针对数据的)
格式:
delete from 表名 where id = 1;
输出:
delete from classes where id = 1;
回车显示:
表示成功删除id为1的数据。
 
8.修改数据
格式:
update 表名 set 字段名 = '1234' where id = 1;
输出:
updata classes set name = '三年级' where id = 1;
回车显示:
表示修改成功。
改前:
改后:
 
9.增加字段
格式:
alter table`表名`
add column `字段名` 属性;
输出:
alter table `classes`
add column `age` int(3) unsigned;
回车显示:
表示添加成功。
 
10.修改字段名‘’
格式:
alter table `表格`
change column `原字段名` `新字段名` int(3) unsigned;
输入:
alter table `classes`
change column `age` `age_0` int(3) unsigned;
回车显示:
修改成功。
 
11.删除字段
格式:
alter table `表名`
drop column `字段`;
输入:
alter table `classes`
drop column `age`;
回车显示:
表示删除成功。
 
12.查看表字段信息
格式:
desc 表名;
输入:
desc classes;
回车显示:
 
 
posted @ 2018-12-02 10:59  is_aug  阅读(212)  评论(0编辑  收藏  举报