由于本人也想在将来的一段时间之内转型到数据处理的岗位上,开发这条路并不太适合我这种年龄大了的人,这次我不求速成,只求能够在这条路上将自我修炼为一个真正合格的IT从业者,我发现大部分的知识需要我们反复去练习才能够真正的掌握,至于你是否已经真正掌握了一门知识,或者是需要花多少的时间去掌握一门知识,不要抱有太多的幻想,或者是自认为是一个天才,这就太自大了,只能说孰能生巧,是否需要一个引路人,我也只能说修行还是需要你个人的天赋以及后天的努力。
数据库的简介
数据库概念
就是一个文件系统,使用标准sql对数据库进行操作(crud)
crud:是指在做计算处理时的增加(Create)、读取查询(Retrieve)、更新(Update)和删除(Delete)几个单词的首字母简写
常见的数据库
Oracle:是oracle公司产品,是大型的收费的数据库
DB2:是IBM公司的产品,是大型的收费的数据库
SQLServer:是微软公司产品,是中型的数据库
MySQL : 在oracle收购之后6.x版本开始收费,之前的版本是免费的
SQLite:是小型的嵌入式数据库,应用在客户端开发中,比如Android
关系数据库:存储的是实体之间的关系
比如有购物网站,有用户,订单,商品,称为实体
用户、订单和商品之间的关系称为实体之间的关系
使用ER图表示实体之间的关系
实体使用矩形、在实体上面属性使用椭圆,之间的关系使用菱形
DDL
对于安装mysql,以及配置我们的mysql我相信已经我不用我去赘述,当然我们的目标还是要去掌握sql语句的基本使用,在我们的进行操作之前,我们必须明白一个事情,就是一个RDBMS中包含了多个数据库,多个数据库中又可以包含了多个二维表格,表格当中就是我们的字段和数据,其中我们只能对一行数据进行读写操作,当然起初我们是要对我们的数据库和表进行操作,主要的操作指令包含了:
create:创建
drop:删除
alert:修改
初始化的工作:
通过win+R的方式输入cmd打开我们的指令窗口模式,输入mysql -u[user_name] -p[password] 回车进入到我们的mysql数据库管理系统,可以使用quit或者exit进行退出
创建一个属于我们自己的数据库:create database mydatabase;
之后当然是要使用这个数据库,在这个数据库中创建我们的表,这有一点类似于我们创建了一个文件夹,之后我们需要在文件夹中创建我们的文档(当然这也只是一个比喻而已),当然此时我们可能需要一个指令就是显示系统中所有的数据库:show databases;之后使用我们创建的数据库:use mydatabase;切换成功之后我们当然也可以显示所有的表格,这简直就是对英文单词的学习:show tables;默认就是显示当前数据库中所有的表格,当然我们在后面可以加上一个from指定一个数据库:show tables from mysql;切换到指令的数据库之后,由于是我们自己创建的数据库,里面一定不包含任何的表,所以接下来我们所要做的事情就是创建表格,创建表格必须指定一个或者一个以上的字段,否则系统会报错,我们可以创建一份物品清单,包含了物品id,物品价格,物品功能以及物品购买日期:
create table goods_list (goods_id char(4) not null,goods_price integer not null,goods_function varchar(20),goods_date date,primary key(goods_id));
初次创建我们的表格时,我们说我们必须指定一行的字段,字段包含了字段名称,字段数据类型以及对字段的约束,primary key指定的字段我们称之为主键字段,这个字段被约束为不能出现重复的数据,方便我们对不同行的数据进行区分,创建完一个表格的字段之后我们还未写进去任何的数据,我们假设想要显示一个表格的所有字段:show columns from goods_list;
法则:我们说在数据系统中可以包含多个的数据库,我们可以创建属于自己的数据库,在数据库中包含了多个表格,我们可以创建不同的表格,在创建表格时我们需要注意,一个表格必须包含一个或者一个以上的字段,所以在我们创建表格的过程中必须指定字段,字段主要包括字段的名称,字段的数据类型以及字段的约束键,最为重要的是理清我们的数据库系统,数据库,表以及字段之间的联系。
删除和更新
删除一个数据库我们可以使用:drop database mydatabase;以上的操作可以删除我们自定义的数据库,当然我们也可以删除我们的表:drop table goods_list;需要注意的是被删除的表是不可恢复的,所以这个操作我们必须要谨慎,表的更新主要是操作我们表里面的字段,包括了字段的增加(add),删除(drop)以及更改(modify,change),下面我们可以举一个栗子:
增加字段:alter table goods add goods_desc varchar(20);
删除一个字段:alter table goods drop goods_desc;
修改一个字段:alter table goods modify goods_name varchar(10);
修改一个字段(重命名):alter table goods change goods_name goods_desc varchar(10);
插入数据
首先我们必须明确一点就是表中数据的读写必须以行为单位,我们插入的数据当然也是以行为单位,也就是说我们必须一行行地插入我们的数据,还有一个问题就是我们的数据在写入的过程中可能会碰到突发情况,这时比方说你的数据写到一半,机器断电了,当你重启后数据库中的数据就不太准确了,所以这不是我们不想要的结果,我们的做法是只有当数据被完整地写入才能真正写入我们的数据库,否则这条数据不会被写入,也就是数据插入的事务模式,在mysql中我们可以使用:start transaction;开启一个事务,之后进行我们的数据插入操作,比方说:insert into goods values(根据字段填写你的数据),当然最后要提交我们的操作:commit;
补充:最后就是假设我们将表名称创建错了,我们可以进行修改,比方说下面我们将把我们的goods表重命名为goods_list:alter table goods rename to goods_list;
DML
前面大部分的时间我们是在对数据库,表以及表里面的字段进行操作,当然最后我们也插入了一行行的数据,现在我们需要对这一行行的数据进行操作,当然最为普遍的操作就是查询操作,最为简单的肯定就是通过select 字段 from 表格,通过字段来查询,当然我们是可以查询多个字段的。
网友评论