MySQL数据库管理 day01
相关概念问题
数据库介绍? 存储数据的仓库

公司主营业务:成都网站建设、成都网站设计、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。成都创新互联公司是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。成都创新互联公司推出梁园免费做网站回馈大家。
数据库服务都那些公司在使用?
购物网站    游戏网站      金融网站         
数据服务存储的是什么数据?
帐号信息   对应的数据信息
提供数据库服务的软件有那些?
开源软件  mysql 、  MongoDB  、  redis
商业软件  oracle 、 db2  、 SQL  SERVER
软件是否跨平台? Linux Unix Windows
软件包的来源: 官网下载 使用操作系统安装光盘自带软件包
mysql软件介绍?    mysql   mariadb
关系型数据型软件: 要按照一定组织结构存储数据,并且数据和数据之间可以互相关联操作。
跨平台 Linux    Unix     Windows
可移植性强
支持多种语言Python/Java/Perl/PHP
生产环境中,数据服务和网站服务一起使用 构建网站运行平台
LNMP    LAMP   WNMP    WAMP
mysql软件包的封包类型: rpm包 源码包 可以自定义安装信息
非关系型数据库软件(NOSQL)mongodb  、
redis 、 memcached
1  搭建mysql数据库服务器
2  mysql服务基本使用
3 mysql数据类型
一、搭建mysql数据库服务器 192.168.4.51
装包
修改配置文件
启动服务
查看服务进程和端口号
服务名  mysqld
服务的主配置文件  /etc/my.cnf
数据目录  /var/lib/mysql
日志文件   /var/log/mysqld.log
二、数据库服务的基本使用
2.1 使用初始密码在本机连接数据库服务
mysql   [-h数据库服务器ip地址   -u用户名    -p'密码'
2.2 重置本机连接密码 mysql> alter user
root@"localhost" identified by "密码";
2.3 把数据存储到数据库服务器上的过程?
2.4 sql命令分类? DDL   DML    DTL    DCL
2.5 sql命令使用规则?
2.6 管理数据库的sql命令 及 库名的命名规则
2.7 管理表的 sql命令
建表的语法格式?
create   table  库名.表名(
字段名   类型(宽度)  约束条件,
字段名   类型(宽度)  约束条件,
.....
);
2.8  管理记录的sql命令
查看
插入
更新
删除
+++++++++++++++++++++++++
三、mysql数据类型
3.1  数值类型   (成绩  年龄   工资  )
每种类型的存储数据的范围都是固定
整数类型 (只能存储整数)
微小整型    小整型         中整型                   大整型    极大整型
tinyint      smallint      MEDIUMINT        INT        bigint
*****unsigned    使用数值类型有符号的范围。
浮点型 (存储小数)
float(M,N)
double(M,N)
M  设置总位数
N   设置小数位位数
正数.小数          总位数   整数位    小数位
18088.88            7           5             2                         
3.2  字符类型   (商品名称   籍贯   姓名   生产厂家)
char  (255)   固定长度字符类型
varchar (65532)   变长字符类型
大文本类型 (音频文件 视频文件  图片文件)
blob
text
3.3 日期时间类型
(注册时间    约会时间   开会时间   入职时间   生日)
年       year   YYYY                 2018
日期   date   YYYYMMDD     20180423
时间   time   HHMMSS          161958
日期时间 datetime/timestamp
YYYYMMDDHHMMSS     20180423161958
获取日期时间给对应的日期时间类型的字段赋值
获取日期时间函数
now() 获取当期系统的时间
year(日期时间)获取指定时间中的年
month(日期时间)获取指定时间中的月
date(日期时间)获取指定时间中的日期
day(日期时间)获取指定时间中的号(天)
time(日期时间)获取指定时间中的时间
可以使用2位数字给year类型的字段赋值,规律如下:
01-69   20XX
70-99   19XX
3.4 枚举类型(插入记录 时 记录的值 在列举的范围内选择)
性别    爱好    专业
enum(值列表)       单选
set(值列表)            多选                
数据类型的关键字 存储范围 赋值方式 合理使用数据类型
**划重点
数值类型的宽度 是显示宽度,不能够给字段赋值的大小。字段的值由类型决
定。
mysql-day02
一 、字段约束条件
1.1  作用: 限制如何给字段赋值的
1.2  包括内容有:  NULL    Key    Default     Extra
NULL  是否允许给字段赋null值
null           默认允许赋null值
not  null   不允许赋null值
key     键值类型:普通索引   唯一索引  全文索引  主键  外 键
Default 默认值 作用:当不被字段赋值时,使用默认值给字段赋值
不设置默认值是  系统定义的是null
default   值
Extra    额外设置  ,字段是否设置为自动增加,默认没有自动增长功能
二、修改表结构
2.1 修改表结构的命令
mysql>  alter  table  库.表    执行动作 ;
添加新字段 add 字段名 类型(宽度) [ 约束条件]
删除已有字段 drop 字段名
修改已有字段的类型宽度及约束条件
*划重点**修改时不能与已经存储的数据矛盾的话不允许修改
modify   字段名    类型(宽度)  [ 约束条件]
修改字段名
change   源字段名   新字段名   类型(宽度)  [ 约束条件]
修改表名
alter  table  源表名  rename   [to]   新表名;
三、mysql键值
设置在表中字段上的,作用是约束如何给字段赋值。同时会给字段做索引。
索引介绍: 树状目录结构  类似与书的“目录”
优点:加快查询表记录的速度
缺点 : 会减慢编辑表记录的速度,且占用磁盘的物理存储空间
(delete  insert   update)
字典 总页面数 1000页
目录信息
1------100页     记录目录信息
101---1000页   正文
查字典的方法
笔画
部首
拼音
修正内容时,修改内容 添加内容 删除内容
stuinfo   /var/lib/mysql/db2/stuinfo.*
name   age   home   class
DBA
3.1 键值:普通索引 唯一索引 全文索引 主键 外 键
3.1.1普通索引的使用(index)
使用规则?
查看
desc  表名;
show   index  from   表名;
Table: t2
Key_name: aaa
Column_name: age
Index_type: BTREE  (二叉树)
创建
在已有表创建
create   index   索引名  on   表名(字段名);
建表是时创建
create  table  表名(
字段列表,
index(字段名),
index(字段名),
);
删除
drop   index   索引名  on   表名;
+++++++++++++++++++++++++++++++
3.1.2主键 primary   key
(普通主键    复合主键    主键+auto_increment)
使用规则?
查看 desc 表; key ----> PRI
创建
在已有表创建     alter  table   表   add   primary  key(字段名);
建表时创建
create  table  表名(
字段列表,
primary  key(字段名)
);
创建复合主键的使用:多个字段一起做主键,插入记录时,只要做主键字段的值不同时重复,就可以插入记录。(必须一起创建一起删除,多个字段的值不允许同时相同)
desc  mysql.db;
desc  mysql.user;
主键primary  key  通常和auto_increment连用。
让字段的值自动增长  i++
数值类型               i=i+1
删除主键   mysql>  alter  table   表   drop    primary  key;
++++++++++++++++++++++++++++++++++++++
3.1.3外 键(作用 限制如何给字段赋值的)
给当前表中字段赋值时,值只能在指定(其他)表的指定字段值的范围里选择。
使用规则?
创建外键 foreign  key 的命令格式:
create   table   表(
字段名列表,
foreign  key(字段名)   references  表名(字段名)
on  update cascade    on  delete  cascade
)engine=innodb;
缴费表
use studb;
create  table  jfb(
jfb_id    int(2)   zerofill  primary key  auto_increment,
name   char(15),
pay   float(7,2)
)engine=innodb;
insert into  jfb (name,pay)values("bob",26800);
insert into  jfb (name,pay)values("tom",26000);
select * from jfb;
班级表
create  table  bjb(
bjb_id   int(2) zerofill,
name   char(15),
foreign  key(bjb_id)   references  jfb(jfb_id)
on  update cascade    on  delete  cascade
)engine=innodb;
insert  into   bjb values(3,"lucy");
insert  into   bjb values(1,"bzengjiaob");
insert  into   bjb values(2,"tom");
select  * from bjb;
mysql> update  jfb set jfb_id=9 where name="bob";
mysql> delete from jfb where jfb_id=2;
select   from jfb;
select   from bjb;
查看 mysql> show create table 表名;
删除外键
alter  table  表名  drop  foreign key  外键名;
alter  table  bjb  drop  foreign key  bjb_ibfk_1;
mysql> delete from jfb where jfb_id=02;  他有同步的作用 班级表也没有这一条
mysql> update jfb set name="xixi"where jfb_id=05;  修改缴费表ID是05 把他的名字改成xixi
在已有表创建
mysql> delete from bjb;
mysql> alter  table  bjb  add  foreign  key(bjb_id)   references  jfb
(jfb_id)  on  update cascade    on  delete  cascade;
当前题目:mysql数据库的基本操作1
文章源于:http://www.scyingshan.cn/article/ggsihd.html

 建站
建站
 咨询
咨询 售后
售后
 建站咨询
建站咨询 
 