-
引入
数据保存到内存:
优点:
1)读写非常快
缺点:
1)程序关闭导致数据丢失
数据保存到文件:
优点:
1)数据可以永久保存
缺点:
1)频繁地使用IO操作,效率不高
2)数据管理不方便,例如查询某个数据需要全部读取出来,在匹配。
数据保存到数据库软件:
优点:
1)数据永久保存下来
2)数据管理非常方便。(例如查询非常快速和方便)
什么是数据库软件
数据库,俗称数据的仓库。方便管理数据的软件(或程序)。
市面上数据库软件
Oracle:甲骨文公司的产品。当前最流行应用最广泛的数据库软件。和java语言兼容非常好。
SQLServer:是微软公司产品。Windows平台应用非常广泛。和c#,net平台兼容非常好。
DB2:IBM公司产品。IBM服务器 - > UNIX - > DB2 - > Websphere
MySql:开源组织的产品。甲骨文公司的产品。免费!!和java语言兼容非常好!适合中小应用。
MongoDB:(非关系型数据库,上面的都是关系型数据库)
MySql入门
1)到mysql官网下载
2)安装
3)使用
验证是否成功:
打开cmd -> 输入mysql-u root -p 回车 - >输入密码 回车 -
MYSQL数据库
-
数据库管理
1)查询所有数据库
mysql > show databases
Database
information schema --mysql元数据,基础数据
mysql --mysql配置数据库,其中包含用户信息。(用户名和密码,权限管理)
performance schema --mysql数据库软件的运行数据,日志信息,性能数据
test --测试数据库。空的
2)创建数据库(进行到 ‘:’时结束)
默认情况下创建数据库:create database xxx:
设置默认字符集 :default character set utf-8:
删除数据库:drop database xxx:
查看数据库的默认字符集:show create database xxx:
修改数据库:alter database xxx default character set gbk: -
表的管理
选择数据库:use xxx:
1)查看所有表
show tables
2)创建表
create table student(
- >sid int ,
- >sname varchar(20),
- >sage int
- >):
varchar(20) 表示数据为字符型长度为20
3)查看表:
desc xxx:
4)删除表
drop table xxx:
5)修改表
1)添加字段:alter table xxx add column sgender varcher(2):
2)删除字段:alter table xxx drop column sgender:
3)修改字段:
1)改字段类型:alter table xxx modify column remark varcher(100):
2)改字段名称:alter table xxx change column sgender(之前的名称) gender(改过的名称)varcher(2):
3)修改表名:alter table xxx rename to xxx: -
数据库增删改查数据(以student表单为例,加基本属性)
1.增加数据
插入所有字段,依顺序插入:insert into student values(* ,* ,* 。。。);
插入部分字段:insert into student(id,name)values(2,“李四”);
2.修改数据 :
修改所有数据:update student set gender =“女”;
带条件的修改:update student set gender=“男” where id=1;
修改多个字段:update student set gender=“男” ,age=30 where id=1;
3.删除数据:
删除所有数据:delete from student;
带条件的删除:delete from student where id=1;1)可以带条件删除 2)只能删除表的数据,不能删除表的约束。 3)使用delete from 删除的数据可以回滚(事务)
另一种方式:truncate table student; 1)不能带条件的删除 2)既可以删除表的数据,也可以删除表的约束。 3)删除的数据不能回滚
(id int primary key auto_increment,----自增张约束)
4.查询数据:(select)
1.查询所有列
select * from student;
2.查询指定列
select id ,name from student;
3.查询时指定别名:select id as ‘编号’ ,name as ‘姓名’ from student as s(注意:在多表查询时经常使用表的别名)
4.查询时添加常量列
例:需求:在查询student表时添加一个班级列,内容为“重点班” select id ,name ,gender ,age,“重点班” from student;
5.查询时合并列
例:需求:查询每个学生的servlet和jsp的总成绩
select id,name ,(servlet+jsp)as ‘总成绩’ from student;
注意:和并列只能合并数值类型的字段
6.查询时去除重复记录
例:需求:查询学生的性别
select distinct gender from student;
另一种方法:
select distinct(gender) from student;
需求:查询学生所在的地区
select distant address from student;
7.条件查询(where)
1)逻辑条件:and(与) or(或)
需求:查询id为2 ,且姓名为李四的学生
select * from student where id=2 AND name=‘李四‘;
需求:查询id为2,或者姓名为张三的学生
select * from student where id=2 OR name=’张三‘;
2)比较条件:> < >= <= = <>(不等于) between and
需求:查询servlet成绩大于70分的学生
select * from student where servlet>70;
需求:查询jsp成绩大于等于75,且小于等于90分的学生
select * from student where jsp>=75 AND jsp<=90;
另外一种写法:
select * from student where jsp BETWEEN 75 AND 90;
3)判空条件(null 空字符串):is null / is not null / =’ ’ / <>’ ’
需求:查询地址为空的学生
select * from student where address is null OR address =’ ‘;
4)模糊条件:like
需求:查询姓’张‘的学生
通常使用以下替换标记:
%:表示任意个字符
:表示一个字符
select * from student where name like ’张%‘;
需求:查询姓’李‘且姓名只有两个字的学生
select * from student where name like ’李‘;
8.聚合查询
9.分页查询
10.查询排序
11.分组查询
12.分组查询后面筛选
select*from student;
MySql数据库
最新推荐文章于 2022-04-04 21:06:38 发布