iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >mysql 数据库的基本操作1
  • 805
分享到

mysql 数据库的基本操作1

2024-04-02 19:04:59 805人浏览 泡泡鱼
摘要

Mysql数据库管理 day01相关概念问题数据库介绍? 存储数据的仓库 数据库服务都那些公司在使用? 购物网站 游戏网站 金融网站 数据服务存储的是什么数据?帐号信息

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

数据库服务都那些公司在使用?
购物网站 游戏网站 金融网站

数据服务存储的是什么数据?
帐号信息 对应的数据信息

提供数据库服务的软件有那些?
开源软件 mysqlmongoDBRedis
商业软件 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;

您可能感兴趣的文档:

--结束END--

本文标题: mysql 数据库的基本操作1

本文链接: https://www.lsjlt.com/news/36549.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • oracle怎么查询当前用户所有的表
    要查询当前用户拥有的所有表,可以使用以下 sql 命令:select * from user_tables; 如何查询当前用户拥有的所有表 要查询当前用户拥有的所有表,可以使...
    99+
    2024-05-14
    oracle
  • oracle怎么备份表中数据
    oracle 表数据备份的方法包括:导出数据 (exp):将表数据导出到外部文件。导入数据 (imp):将导出文件中的数据导入表中。用户管理的备份 (umr):允许用户控制备份和恢复过程...
    99+
    2024-05-14
    oracle
  • oracle怎么做到数据实时备份
    oracle 实时备份通过持续保持数据库和事务日志的副本来实现数据保护,提供快速恢复。实现机制主要包括归档重做日志和 asm 卷管理系统。它最小化数据丢失、加快恢复时间、消除手动备份任务...
    99+
    2024-05-14
    oracle 数据丢失
  • oracle怎么查询所有的表空间
    要查询 oracle 中的所有表空间,可以使用 sql 语句 "select tablespace_name from dba_tablespaces",其中 dba_tabl...
    99+
    2024-05-14
    oracle
  • oracle怎么创建新用户并赋予权限设置
    答案:要创建 oracle 新用户,请执行以下步骤:以具有 create user 权限的用户身份登录;在 sql*plus 窗口中输入 create user identified ...
    99+
    2024-05-14
    oracle
  • oracle怎么建立新用户
    在 oracle 数据库中创建用户的方法:使用 sql*plus 连接数据库;使用 create user 语法创建新用户;根据用户需要授予权限;注销并重新登录以使更改生效。 如何在 ...
    99+
    2024-05-14
    oracle
  • oracle怎么创建新用户并赋予权限密码
    本教程详细介绍了如何使用 oracle 创建一个新用户并授予其权限:创建新用户并设置密码。授予对特定表的读写权限。授予创建序列的权限。根据需要授予其他权限。 如何使用 Oracle 创...
    99+
    2024-05-14
    oracle
  • oracle怎么查询时间段内的数据记录表
    在 oracle 数据库中查询指定时间段内的数据记录表,可以使用 between 操作符,用于比较日期或时间的范围。语法:select * from table_name wh...
    99+
    2024-05-14
    oracle
  • oracle怎么查看表的分区
    问题:如何查看 oracle 表的分区?步骤:查询数据字典视图 all_tab_partitions,指定表名。结果显示分区名称、上边界值和下边界值。 如何查看 Oracle 表的分区...
    99+
    2024-05-14
    oracle
  • oracle怎么导入dump文件
    要导入 dump 文件,请先停止 oracle 服务,然后使用 impdp 命令。步骤包括:停止 oracle 数据库服务。导航到 oracle 数据泵工具目录。使用 impdp 命令导...
    99+
    2024-05-14
    oracle
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作