济南Java培训
达内济南山大路中心

17156168575

热门课程

济南Java培训机构丨JAVA开发之MYSQL数据库知识点

  • 时间:2018-02-05 13:09
  • 发布:济南Java培训机构
  • 来源:互联网

    今天济南Java培训机构简单总结一下mysql数据库的基础知识,目前在Android项目开发中,还是后台开发中,数据库都扮演着很重要的角色.这篇文章更多是以cmd命令行的形式总结,也方便我们用到的时候直接查看~
    我们先从数据的CRUD操作开始:
    创建数据库:
    语法:
    create database 数据库名;(默认的是自己安装mysql的字符集)
    create database 数据库名 character set 字符集;
    查看数据库:
    查看所有的数据库:show databases;
    查看单个数据库的结构:show create database 数据库名称
    删除数据库:
    语法:
    drop database 数据库名;
    修改数据库:
    语法:
    alter database 数据库名 character set 字符集;
    数据库的其它操作:
    查看当前正在使用的数据库:select database();
    切换数据库:use 数据库名;
    接下来我们讲解一下数据库表的CRUD操作:
    约束:
    单表约束
    主键:primary key
    唯一:unique
    非空:not null
    创建一个分类表:
    create table 表名(
    字段1 类型(长度) 约束,
    字段2 类型(长度)约束
    )
    举例:create table category1
    (
    cid int primary key auto_increment,
    cname varchar(10) not null
    )
    下面的讲解我们就以我们创建的数据库为例进行讲解:
    查看数据库表:
    查看所有的表:show tables;
    查看单个表的结构:desc 表名;
    删除数据库表:
    语法:
    drop table 表名;
    saveOrUpdate()
    更新数据库的表:
    修改表-添加列
    alter table 表名 add 列名 类型(长度) 约束
    修改表-修改列的类型和约束
    alter table 表名 modify 列名 类型(长度) 约束
    修改表-修改列的名称
    alter table 表名 change 旧列名 新列名 类型(长度) 约束
    修改表-删除列
    alter table 表名 drop 列名
    修改表-修改表名称 (慎用)
    rename table 旧表名 to 新表名;
    穿插讲一下java数据类型在mysql中怎么使用和展示:
    java的数据类型 mysql数据库的数据类型
    int int
    float float
    double double
    char/string char/varchar(char: 固定字符串 varchar:可变的字符串) char(100) abc varcahr(3) abc
    date date,time,timestamp
    文件类型 blob:二进制 text:文本文件
    数据库表里的数据CRUD的操作:
    插入数据:
    语法:
    insert into 表名(列名1,列名2....) values (值1,'值2')
    insert into 表名 values(值1,值2)
    insert into fenlei values(null,'手机商城');
    insert into fenlei values(null,'电脑商城');
    注意的地方:
    1 列名有多少个,values后面的值就要有多少个
    2 列名顺序,与values后面的值顺序要相同
    3 列名数据类型,与values后面的值的数据类型得一致
    4 插入时不得超过最大长度
    5 值如果是字符串类型或则是日期类型
    我们需要给我们的值加上单引号
    cmd命令行插入中文问题:针对的是cmd命令行
    1 my.ini文件,在[mysql]设置字符集:GBK
    2 重启mysql服务 services.msc
    修改表中的数据:
    语法:
    update 表名 set 列名=值 【where 条件】
    注意:
    1 我们修改的列名的类型,要与设定的类型一样
    2 我们值的类型不能超过设定值的大小
    3 我们的值如果是字符串类型或则是日期类型,需要给值加上''
    删除表中的数据:
    语法:
    1 delete from 表名 【where 条件】
    2 truncate 表名
    区别:
    delete是一条一条从表里面删除数据
    truncate是直接删除整张表,重建一张数据结构一样的新表
    扩展:如果是在一个事物中
    delete删除的数据还可以找回来

    而truncate删除的数据就无法找回来了

济南Java培训机构

    查看表中的数据:
    举例:创建一个商品表:
    create table product
    (
    pid int primary key auto_increment,
    pname varchar(20),
    price double
    )
    insert into product values(null,'小米手机',2800);
    insert into product values(null,'华为手机',2800);
    insert into product values(null,'联想手机',4800);
    insert into product values(null,'苹果手机',5800);
    insert into product values(null,'联想电脑',6800);
    insert into product values(null,'苹果电脑',8800);
    insert into product values(null,'戴尔电脑',7800);
    简单的查询:
    1 查询所有的商品
    select * from product;
    2 查询商品名称和商品价格select pname,price from product;
    3 使用别名查询商品:as as也可以省略
    表别名:select * from product as shangping;
    列别名:select pname as mingcheng,price as jiage from product;
    4 去重查询 distinct
    select distinct price from product;
    条件查询:
    1 查询商品名称为小米手机商品;
    select * from product where pname='小米手机';
    2 查询商品价格大于3800的所有商品select * from product where price>3800;
    ******where后面的字符:
    =,>,<,>=,<=,<> and or
    like: 模糊查询
    _占位符 %占位符
    _占位符:代替一个字符
    %占位符: 代替多个字符
    in: 在取值范围内
    3 查询所有带手机的商品 (使用_)
    select * from product where pname like '__手机';
    4 查询所有带手机的商品 (使用%)
    select * from product where pname like '%手机';
    5 查询商品价格在3800,4800,5800的所有商品
    select * from product where price in(3800,4800,5800);
    select * from product where pname in('小米手机','华为手机','联想手机');
    排序查询
    order by ---asc默认 升序 ----desc 降序
    1 获得所有的商品,按照商品的价格来从小到大排序
    select * from product order by price asc;
    2 获得商品里面带手机的所有商品,并且让所有商品按照价格从大到小排序
    select * from product where pname like '%手机' order by price desc;
    聚合函数: max() min() avg() sum() count()
    1 想查询价格最小的商品;
    select min(price) from product;
    2 查询价格最大的商品;
    select max(price) from product;
    3 查询商品价格的总和
    select sum(price) from product;
    4 查询所有商品的平均值
    select avg(price) from product;
    5 统计所有的商品的个数
    select count(*) from product;
    分组查询: group by 字段
    1 查询所有商品数量,按照商品的标识分组
    select bs,count(*) from product group by bs;
    2 查询所有商品价格的平均值,按照商品的标识分组来查询,并且平均值大于3000
    select bs,avg(price) from product group by bs having avg(price)>3000;
    本篇文章是由济南java培训机构为您呈现,希望给您带来更多更好的文章,喜欢的朋友们可以添加微信公众号.

    更多济南java培训机相关咨询,请扫描下方二维码

济南Java培训机构

上一篇:济南java培训机构丨Java知识点集合
下一篇:济南java培训机构丨java工程师需掌握的知识点总结

马上预约七天免费体验课

姓名:

电话:

key / value 数据库的选型(终)

key / value 数据库的选型(五)

key / value 数据库的选型(四)

key / value 数据库的选型(三)

选择城市和中心
贵州省

广西省

海南省

达内教育

有位老师想和您聊一聊