028 MySQL数据库初始

数据库

博客:http://blog.csdn.net/heyiaiqing/article/details/74066831

什么是数据库

数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来,用户可以对数据库中的数据进行增加,修改,删除及查询操作

什么是数据库管理系统

数据库管理系统(DataBase Management System,DBMS):指一种操作和管理数据库的大型软件,用于建立、使用和维护数据库,对数据库进行统一管理和控制,以保证数据库的安全性和完整性。用户通过数据库管理系统访问数据库中表内的数据

常见的数据库管理系统

  1. MYSQL:开源免费的数据库,小型的数据库.已经被Oracle收购了.MySQL6.x版本也开始收费
  2. Oracle:收费的大型数据库,Oracle公司的产品。Oracle收购SUN公司,收购了MYSQL
  3. DB2:IBM公司的数据库产品,收费的.常应用在银行系统中.
  4. SQLServer:MicroSoft公司收费的中型的数据库.C#、.net等语言常使用
  5. SyBase:已经淡出历史舞台.提供了一个非常专业数据建模的工具PowerDesigner
  6. SQLite:嵌入式的小型数据库,应用在手机端
  7. Java相关的数据库:MYSQL,Oracle.

数据库与数据库管理系统的关系

数据库管理关系

MySQL的安装

http://blog.csdn.net/u013235478/article/details/50623693

SQLYog的安装

http://download.csdn.net/detail/zl544434558/7206367

SQL语句介绍与分类

创建数据库

/*
    创建数据库
*/
CREATE DATABASE 数据库名;
CREATE DATABASE luoDatabase;

查看数据库

SHOW DATABASE;

删除数据库

DROP DATABASE luoDatabase;

使用数据库

USE luoDatabase;

创建表

create table 表名(
    列名1(字段名) 数据类型 约束,
    列名2(字段名) 数据类型 约束,
    列名3(字段名) 数据类型 约束
);

CREATE TABLE users(
    uId INT,
    uName VARCHAR(20),
    uAddress VARCHAR(40)
);

删除表

DROP TABLE users;

主键约束,自动增长

/**
    设置为主键,保证数据的唯一性,非空性
    PRIMARY KEY AUTO_INCREMENT,让主键列数据实现自动增长
**/
CREATE TABLE users(
    uId INT PRIMARY KEY AUTO_INCREMENT,
    uName VARCHAR(20),
    uAddress VARCHAR(40)
);

查看所有表

SHOW TABLES;

查看某一表

DESC 表名;

删除表

DROP table users;

修改表结构

添加列,添加字段
ALTER TABLE users ADD tel INT;
修改列名,字段名的约束
alter table 表名 modify 列名 数据类型 约束;
ALTER TABLE users MODIFY tel VARCHAR(50)
修改列名,字段名
ALTER TABLE 表名 CHANGE 旧列名 新列名 类型长度 约束; ALTER TABLE users CHANGE tel newtel VARCHAR(11) NOT NULL;
删除列
ALTER TABLE 表名 DROP 列名;
ALTER TABLE users DROP newtel;
修改表名
RENAME TABLE 表名 TO 新名;
RENAME TABLE users TO users2;
修改表的字符集(最好不要做)

往表中添加数据(考虑主键)

向数据表中添加数据 insert
格式:
    insert into 表名(列名1,列名2,列名3) values (值1,值2,值3);
注意:
    列名,表名问题
    对应问题,个数,数据类型

添加数据,不考虑主键

格式1:
    insert into 表名 (列名) values (值);
格式2:(省略列名的不能省掉主键的值)
    insert into 表名 values (值);

添加数据,批量写入

格式:
    insert into 表名 (列名1,列名2) values (值1,值2), (值1,值2), (值1,值2);

对数据进行更新操作

格式:(where条件最好唯一)
    update 表名 set 列1=值1,列2=值2 where 条件(列名=值);

删除表中的数据

格式:
    delete from 表名 where 列名 = 值;
    

查询指定列的数据

格式:
    select 列名1,列名2 FROM 表名;

查询表中所有列的数据

格式:
    select * from 表名 where 列名 = 值;

查询去掉重复记录(distinct) distinct

格式:
    select distinct 列名 from 表名

查询重新命名列(as)

select 列名 as '名称' from 表名

查询时直接进行数学计算

查询数据中,直接进行数学计算
select zname,zmoney+1000 as 'sum' from 表名

数据库数据乱码问题

-- 临时性的改变,
set names 'gbk';

条件

=
<>
<=
>=

and
or
not
id in (1, 3, 5, 7)
id not in (1, 2, 3, 4)

条件查询(where的条件过滤)

between and(可以用于日期之间的查询)

列名 in (100, 3500, 5000)
列名 not in (100, 3500, 5000)

模糊查询(like)

必须配合通配符
%:多个字符
_:一个字符
select * from 表名 where 列名 like '%支出%'

排序查询

升序,降序
order by 列名 [desc:降序] [asc:升序]
select * from 表名 order by 列名 [desc:降序] [asc:升序]

聚合函数

对一列进行计算,返回单一的值

  1. count:统计不为null的值的个数
  2. sum:对一些数据进行求和计算
  3. max:对某列数据,获取最大值
  4. avg:求平均数
count函数
select count(列名*) as 'count' from 表名;
sum求和函数,对一些数据进行求和计算 sum(列名)
sum求和时,不是数值类型就忽略,null值按照0算
select sum(列名) from 表名 [where zname like '%支出%']
max 函数,对某列数据,获取最大值
avg函数,求平均数
如果指定列不是数值类型,那么计算结果为0
分组统计
group by 被分组的列名

select sum(列名) as 'sum', 列名 from 表名 [where 条件] Group by 列名 [order by sum]
分组后过滤,关键字having
select sum(列名) as 'sum', 列名 from 表名 [where 条件] Group by 列名 [order by sum] having sum > 5000

总结

后续会跟上JDBC和MySQL进阶的内容,坚持坚持。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,033评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,725评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,473评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,846评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,848评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,691评论 1 282
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,053评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,700评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,856评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,676评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,787评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,430评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,034评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,990评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,218评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,174评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,526评论 2 343

推荐阅读更多精彩内容