数据库基本操作
一、环境配置
1.配置环境变量
将mysql/bin目录路径配置到用户变量Path和系统变量PATH中。
2.启动mysql服务
启动cmd,输入net start mysql57(57为版本号),提示服务已启动。
3.进入mysql
cmd输入mysql -u root(用户名) -p 回车后输入密码,提示mysql>即启动成功。
4.退出mysql
mysql>exit。
二、数据库常用字段类型:
1.字符型:
char 定长字符数据; varchar 变长字符数据;
2.整型:
bit 1或0的整数数据; tinyint 1字节的整数数据; smallint 2字节的整数数据; int 4字节的整数数据;
3.日期型:
datetime 17530101~99991231中的某一日期;
4.浮点数字型:
float -1.79^308~1.79^308之间;
三、数据库操作语句
1.创建数据库:create database databasename;
2.显示数据库列表:show databases;
3.使用数据库:use databasename;
4.删除数据库:drop database databasename;
四、表操作语句
1.创建表:create table tablename (col1 char(长度) primary key, col2 int(长度)); //创建表时一同创建两个字段col1(主键)和col2,数据类型分别为char和int
2.更改表:alter table tablename add column col3 varchar(长度); //添加一个字段col3,数据类型为varchar,且一次只可增加一个字段
3.更改主键: alter table tablename drop primary key; //删除表的主键
alter table tablename add primary key (col1); //将col1设置为表的主键
4.删除表:drop table tablename;
5.显示表所有列:show full columns from tablename;
6.安全模式:set SQL_SAFE_UPDATES = 1;执行该命令更改mysql数据库安全模式以防止误删,0为关闭1为开启
开启后update数据时需:
1.where条件中包含主键或索引字段
update tablename set col1 = xxx where id = 1;(条件中需包含主键或索引字段)
2.加入limit限制(limit = n,更新n条数据)
update tablename set col1 = xxx limit 4;(更新4条数据)
3.where条件中不包含主键,但有limit限制
update tablename set col1 = xxx where col2 = yyy limit 1;(条件中col2为非主键,且只更新一条数据)
delete数据时需:
1.where条件中包含主键或索引字段
delete from tablename where id = 1;(条件中需包含主键或索引字段)
2.只加入limit限制而无where时不可以delete(与update不同之处)
3.where条件中不包含主键,但有limit限制
delete from tablename where col2 = yyy limit 1;(条件中col2为非主键,且只更新一条数据)
五、插入数据语句
1.插入数据:insert into tablename (col1,col2,col3) values ('val1','val2','val3'); //插入数据时,此表必须要有主键,且插入的值必须包含主键
2.插入表2中的数据:insert into talbename (col1,col2,col3) select col1,col2,col3 from tablename2; //查找表2中的字段数据插入到表1中,前后字段类型须相同
六、查询数据语句
1.查找表中数据:select col1,col2 from tablename;
2.按条件查找数据:select * from tablename where col1=xxx and/or col2=yyy; //查找col1=xxx 并且/或者 col2=yyy的数据
3.按顺序查找数据:select col1,col2 from tablename order by col2 (desc); //将col1,col2字段以col2从小到大(从大到小)的顺序查找出来
4.查询相同数据:select * from table1,table2 where table1.col1=table2.col2; //查找出表1中col1值与表2中col2值相同的数据
5.查询数据笔数:select count(*) from table1 where col1=xxx; //查找出col1=xxx的数据共有多少笔
6.计算查找数据:select SUM/AVG/MAX/MIN(col1) from table1; //计算出col1字段的总和/平均数/最大值/最小值
7.模糊查询:select * from table1 where col1 like '%x%'; //%代表任意长度的字符,123xabc、xddd、yyyx
select * from table1 where col1 like '_x_'; //_代表单个字符,axc、1x3;'__x':aax、12x
select * from table1 where col1 like '[a-c]d'; //[]代表括号中的任意字符,ad,bd,cd
select * from table1 where col1 like '[^1-4]5'; //[^]代表除括号中的字符以外
8.范围查询:select * from table1 where col1 in ('xxx','123','abc'); //查找出col1等于'xxx','123','abc'的字段
select * from table1 where col1 between '123' and '999'; //查找出col1的值介于123和999之间的字段
七、更新数据语句
update tablename set col1='xxx',col2='yyy',col3='zzz' where 条件; //按条件更新col1,col2,col3的值为xxx,yyy,zzz
八、删除数据语句
delete from tablename where 条件; //按条件删除数据,条件中需包含主键