初识MySQL
在命令行 net start mysql 开启MySQL服务;
net stop mysql 关闭MySQL服务;
MySQL目录下,输入mysql -u root -p 后回车,输入密码进入MySQL;
show databases; 查看数据库, !!SQL语句结束时要用分号!!
use 数据库名称;进入数据库
show tables;查看数据库内容
select * from 表名;查看表里的所有。
创建数据库
create database db1; 创建数据库db1;
create database db1 default charset utf8; 创建默认编码方式为utf8的数据库db1。
drop database db1; 删除数据库 db1。
创建表
create table t1(id int,name char(10)); 表里id列和name列,name列的数据规定为10个字节。
默认创建表用下面的代码
create table t2(
id int not null auto_increment primary key,
username char(10),
password char(20))engine=innodb default charset=utf8;
其中可以创建多个列,engine引擎为innodb,innodb支持事务,具有原子性,数据操作过程中出现错误可以回滚到原状态。
show create table t1; 查看t1的创建方式。
操作表
insert into t1(id,name) values(1,'dah'); 插入数据id为1,name为dah。
insert into t1(id,name) values(1,'dah'),(2,'dd'); 同时插入多条数据。
select * from t1; 查看t1。
select * from t1 order by id desc; 查看表里的数据,按id从大到小的顺序。
select * from t1 order by id asc; 查看表里的数据,按id从小到大的顺序。
delete from t2; 清空表t2,只清空数据,自增继续。
delete from t2 where id<3; 删除表里id小于3的数据,依次删除符合条件的数据
truncate table t2; 清空表t2,清空数据,自增从1开始。
drop table t2; 删除表t2。纯粹的删除。
update t1 set age=18; 把表里的age列都改为18.
update t1 set age=18 where age=17; 把age列的17改为18。按条件修改表里的内容。
char(10)与varchar(10)的区别
char(10)占固定长度,查询速度快。‘abc’占10个字节 最长支持255
varchar(10)是变长的,‘abc’占3个字节