Mysql学习之路——day1

来源:互联网 发布:游戏编程师工资高吗 编辑:程序博客网 时间:2024/06/08 12:27

数据库服务器

首先我们要知道,一个数据库服务器包含N多数据库(database),一个数据库包含N多表(table),一个表包含行和列。一般一个数据库服务器中的数据库确定了,就很少

改动了。


在用 mysql -h localhost -u root -p; 再输入密码登录后,

用show database; 可以查看服务器中的数据库(database);

使用use database_name; 来使用某个数据库。

用show tables;就可以查看这个数据库里面包含的表(table)了。


平时,我们的操作主要是基于table上面的操作,如增删查改。

//创建表

create table table_name;


//查看,也可以加上条件选择查看具体的数据,

select * from table_name; 



//显示table的具体描述信息(description) 

desc table_name;


//插入数据(其实就是table中的行)

insert into table_name (列1,



//修改数据

UPDATE 表名 SET 字段名1='a',字段名2='b' WHERE 字段名3='c';



//删除某行数据

mysql> DROP TABLE 表名;这个就是删除整个table





所谓建表其实就是声明列的过程,在数据库语言中,数据是以文件的形式放在硬盘中的(也有放在内存里的)。

列:不同的列类型占的空间不一样,选列的原则:够用,但又不造成浪费。


详解列类型:

一、数值型

  1 整形

整形又细分为 TinyInt < SmallInt < MediumInt < Int < BigInt。 

现在举例从数学上来讨论TinyInt ,主要讨论 占用空间 以及存储范围。TinyInt 占用 1个字节,就是8 bit,也就是十进制 0-255。如果用最高位表示符号位,表示范围就是-128-127。

类型字节数 无符号     有符号

TinyInt      10-255      -128-127

SmallInt      0-65535-32768 - 32767  

MediumInt    3 0-16777215(千万)

Int     4     0-4294967295(四十亿)

BigInt      8很大。。。


一般存储数据时,默认的是有符号的。要想存储的数据是无符号的,可以加 tinyint unsigned。

整形列的可选属性  tinyint (M),  unsigned,   zerofill

M : 代表宽度,在zerofill时才有意义,所以如果没有设置zerofill,不需要设置M属性,设置了也没用。

zerofill :零填充。(如果某列设置为零填充,则数据为无符号数)  就是我们平常见到的 0001,0002...9999,(这时的M指就是等于4)保持对其用的。


这时候添加的表里默认的数据都是Null,如果不想设置NULL,可以添加语句 not null default 0;

alter table class add age4 tinyint not null default 0;


0 0
原创粉丝点击