Mysql简单入门

Mysql简单入门

1、连接数据库

mysql -h localhost -u root -p

Entry password:

2、查看数据库

show databases;

3、创建数据库

create database test;

test为数据库名

4、使用选中数据库

use test;

5、显示表

show tables;

6、删除数据库

drop database test;

7、创建表

create table class(stu int,name varchar(20));

class为表名

8、更改表名

rename NewName to OldName;

9、显示表信息

desc class;

注意:命令退出
\c

10、建表

create table msg(

id int, title varchar(60), name varchar(10), content varchar(1000) );

create table class( id int primary key auto_increment, name
varchar(10), age tinyint )charset utf8;

11、增

alter table class add age2 tinyint unsigned;增加一列
alter table class add age2 tinyint unsigned not null default 0;推荐使用默认值,不为null,默认为0

insert into msg

(id,title,name,content) values (1,‘初来乍到’,‘张三’,‘刚来能不能当老大?’);

insert into msg (id,title,name,content) values (3,‘又来了’,‘王五’,‘千年老二’),
(4,‘4标题’,‘刘备’,‘雌雄双剑’), (5,‘5标题’,‘关飞’,‘大刀’);

12、解决字符集问题

默认建表一般用utf8,而我们在问windows下窗口是GBK,因此需要声明字符集

set names gbk;

13、改

update msg set title=‘俺来了’, content=‘偏要当老大’ where name=‘李四’;

14、删

delete from msg where id=2 ;

15、查

select id,title from msg;

select *from msg where id>2;

行列

select id,title from msg where id>2;

详细,查询的5种子句:where,group,having,order by,limit

16、所谓建表:就是声明列的过程

列:不同的列类型占的空间不一样
选列原则:够用、不浪费

17、详解列类型:

整型:tinyint 1/smallint 2/mediumint 3/int 4/bigint 8
占据空间、存储范围
默认有符号
tinyint(M) unsigned zerofill M:宽度 无符号 0填充(如果为zerofill,默认为unsigned)
alter table class add age2 tinyint unsigned;增加一列

浮点型 :float(M,D) M:精度(总位数,不包含点) D:标度(小数位)
更精确 定点型:decimal(M,D)6,2
两者字节:4个字节或8个字节

字符型
char(M):定长字符,M为宽度,可容纳的字符数;0-255
varchar(M):可变长度字符集;有1-2字节记录长度(0-65535,约2w-6w字符,受字符集影响)
区别:
char 定长,M个字符,如果存的小于M,空格补齐,实占M个;末尾空格去除,存取速度更快
varchar 变长,M个字符,如果存的小于M,假设为N,N<=M,实占N+(1-2)个字符;末尾空格保留
text:文本类型,可以存比较大的文本段,搜索速度慢,;不用加默认值(加了也没用);约2w-6w字符,受字符集影响)

日期/时间型,最好有’’,这里省略了,例如:‘1992-08-12’
year:范围1901-2155;[000表示错误选择]
如果输入2位,00-69表示2000-2069,70-99表示1970-1999年
year(4)
date:典型格式:1992-08-12
范围:1000-01-01–>9999-12-31

time:典型格式 hh:mm:ss,范围-838:59:59->+838:59:59
datetime:上面两个结合
注意:在开发中,很少使用日期时间类型来表示一个需要的精确到秒的列
原因:虽然日期时间类型能精确到秒,且方便查看,但计算不便,故
用时间戳(int)来表示,即1970-01-01 00:00:00到当前的秒数,也方便格式化显示

enum():枚举类型
set():集合型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值