您的位置:首页 > 编程语言 > Java开发

Java学习笔记--数据库初识

2017-06-01 10:49 309 查看
最近刚刚学习了数据库的第一节课,着重学习的是Mysql数据库

1.数据库优点

数据保存内存中优点是存取速度快,缺点是数据不能永远保存;数据保存在文件中优点是数据不可以永远保存,缺点是速度比内存操作慢,且IO操作过于频繁,查询数据不方便;但数据库良好的改变了上述缺点,具有数据永久保存,速度比较快,查询和管理方便的优点。

2.数据库分类

·非关系式数据库:层次型数据库,网状式数据库

很好的解决了数据的集中和共享问题,但在数据库独立性和抽象级别上仍有很大缺陷

·关系式数据库:把复杂的数据结构归结为复杂的二元关系,通过关联的表格的分类,链接和选取来完成对数据库的管理。常见有Mysql和Oracle.

3.Mysql结构

数据库–表–结构

4.相关操作语句

show databases;查看所有数据库,一定要要以分号结束,

这样sql语句才会发送给mysql服务器端执行。

create database 名称

default character set 类型(ec.utf8);创建数据库

drop database 名称;除数据库

alter database 名称 default characer set gbk;修改数据库默认字符集

管理表

use 数据库名称;选择数据库

show tables;显示数据库中所有表

create table 名称(成员名称,成员名称);创建表

desc 表名称;以表格格式返回

drop table 表名称;删除表

alter table 表名称 add column 字段名称 字段类型;添加字段

alter table 表名称 modify column 字段名称 字段类型;修改字段类型

alter table 表名称 change column 原字段名称 修改为 字段类型;

alter table 表名称 drop column 字段名称;删除字段

alter table 表名称 rename to 表名称;修改表名称

管理数据

SELECT * FROM student;

INSERT INTO student VALUES(1,’eric’,20,’广州人’,’男’);

字段的数据一定要和值的数量一致

INSERT INTO student(id,NAME,age,remark2) VALUES(3,’jacky’,27,’佛山人’);

UPDATE student SET gender=’男’;

UPDATE student SET gender=’女’ WHERE id=2;

UPDATE student SET age=28,remark2=’韶关人’ WHERE id=2;

DELETE FROM student;

DELETE FROM student WHERE id=2;

注意:delete from 和 truncate table 的区别?

– 1)delete from删除全部,也可以按条件删除,但是truncate table只能全表删除,不能按条件删除

– 2)delete from删除的数据可以回滚,truncate table删除的数据不能回滚。

– 3)delete from不可以把自增长约束(auto_increment)重置,truncate table可以把自增长约束(auto_increment)重置

SELECT * FROM student;
SELECT NAME,gender FROM student;
SELECT NAME AS '姓名',gender AS '性别' FROM student;
SELECT NAME '姓名',(servlet+jsp) '总成绩'  FROM student;合并列查询
SELECT NAME '姓名',gender '性别',age '年龄','java就业班' AS
4000
'班级' FROM student;
SELECT DISTINCT remark2 FROM student;查询去除重复数据
条件查询
SELECT * FROM student WHERE id=3 AND gender='男';
SELECT * FROM student WHERE servlet>80;
SELECT * FROM student WHERE remark2 IS NOT NULL AND remark2<>'';
模糊查询
SELECT * FROM student WHERE NAME LIKE '张%';

SELECT SUM(servlet) FROM student;
SELECT AVG(servlet) FROM student;
SELECT MAX(servlet) FROM student;
SELECT MIN(servlet) FROM student;
SELECT COUNT(*) FROM student;
SELECT COUNT(id) FROM student;
SELECT gender,COUNT(*) '人数' FROM student GROUP BY gender;
SELECT * FROM student LIMIT 0,2;
SELECT * FROM student ORDER BY id ASC;


5.字段类型

– char(20) vs varchar(20)

– char(20): 固定长度的字符串。不管实际存储的数据的大小,一定占用20个字符空间

– varchar(20): 可变长度的字符串。占用的空间大小就是实际存储的数据大小。

-- int vs int(4)
-- int: 默认最多11位,长度根据实际存储的数值的长度
-- int(4): 固定的数值长度
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: