My SQL基础篇
一:登陆
打开cmd,输入:mysql -uroot -p,再回车,输入密码(u代表user,p代表password)
也可以:mysql -uroot -p123 y1,表示登陆时直接进入y1数据库
二:数据库操作:
1、查看数据库:show databases;
2、创建数据库:create database y1;
3、切换数据库(进入某数据库): use y1;
4、删除数据库:drop database y1;
三:表操作
1、查看表:show tables;
2、创建表:
mysql>create table list(
->id int,
->name varchar(30),
->pass varchar(30)
->);
3、修改表名:rename table list to list_1;
4、删除表:drop table list;
5、查看表字段:desc list; (或者 describe list;)
6、查看表数据:
select * from list;
select * from list where id=1;
四:表字段类型
1、数值:int(n),float(n) n:代表位数
2、字符串:
char(n) //占用n个字节,最多255字节
varchar(n) //存多少占多少,>=255字节
text //最多65535字节
longtext //最多42亿字节
五:字段属性
1、unsigned //无符号,全是正数
2、zerofill //零填充,int(3),不够3位补0
3、auto_increment //自增,例如id
4、null //这一列值允许为null
5、not null //这一列值不允许为null
6、default //默认值
上表中的各个字段属性可以为null,现在在list表中插入用户名为”“:
或者直接写null也行:
如果想自动添加id,不用手工添加:
mysql> create table list_1(
-> id int unsigned auto_increment primary key,
//设置id为无符号,自增,主键(查询时可按id查询)
-> name varchar(30),
-> sex varchar(5) not null default"woman"
//性别不能为空,否则默认为女
-> );
如下图所示,由于id属性为自增,所以插入名单时不需要设置id,只需设置name和sex即可,如果sex是女。也可不用设置,因为sex属性默认为woman,如下图:
六、增,删,改,查 常用语句
- 增:
1、插入数据:insert into list_1(name,sex) values("a_o",woman);
2、添加字段(添加一列age):alter table list_1 add age int not null;(属性为int,非空)
添加一列sex:alter table list_1 add sex varchar(5) not null default "man";(属性varchar,非空,默认为man)
- 删:
1、删除数据:delete from list_1 where id>=2;
2、删除表中所有记录:delete from list_1;
3、清空表中所有数据:turncate list_1;(会把表中的自增列表清空,再添加数据从1开始)
4、删除字段(删除一列age):alter table list_1 drop age;
- 改:
1、更改数据:update list_1 set name="A_o"where id=1;
2、修改字段:(把age列改为age1):alter table list_1 change age age1 int not null;
(把age字段modify):alter table list_1 modify age int null;
- 查:
1、查询数据:select * form list_1;
2、查看sql性能:desc select * from list_1 where id=5\G
3、复制自己的数据:
mysql>insert into list_1(name,sex)select name,sex from list_1;
(即复制list_1表中所有的name列数据和sex列数据)
4、快速查询表的总行数:mysql>select count(*)from list_1;