找回密码
 立即注册

推荐阅读

  • 便民服务
  • 关注我们
  • 社区新手
本帖最后由 南京1期庞惠茹 于 2021-11-30 21:49 编辑

Mysql数据库知识复盘

数据库分为关系型数据库和非关系型数据库
  • 关系型数据库:存储数据的格式跟excel表格很像,存储数据非常友好

Oracle==》收费的、大型的公司,甲骨文公司,oracle是公司的一个产品
mysql==》开源的、免费、也是oracle公司的
sql server==》微软

  • 非关系型数据库:

hbase==》大数据
Redis==》key,values,键值对形式,缓存型的数据库
mangodb==》一个键、一个值

  • 安装数据库mysql

(前提条件,登录虚拟机,获取ip地址,链接Xshell)
yum install==》在线下载并安装
yum install mysql==》下载mysql客户端
yum install mysql-server==》下载mysql服务端
rpm -qa|grep -i mysql==》产看是否安装了数据库

  • 启动、关闭、重启及状态查询

service mysqld start==》启动数据库(每次进入数据库需启动
service mysqld stop==》关闭数据库
service mysqld restart==》重启数据库
service mysqld status==》重启数据库
备注:mysqld后面的d代表的是一个守护进程daemon
  • 查看进程、登录、查询所有库、设置账号和密码、退出数据库

netstat -nltp==》查看所有进程(重点记住此指令)
mysql -uroot -p==》登录进入mysql数据库(第一次安装数据库,不需要密码)
show databases;==》查询数据库中的所有库
mysqladmin -uroot password "123456"==》设置数据库账号和密码(不在数据库中设置,根目录下操作)

【如何跳过权限不输入密码进入mysql
编辑vim /etc/my.cnf,在socket=/var下面这行输入
i模式输入:skip-grant-tables :wq保存
service mysqld restart==》重启数据库】

exit/Ctrl+c==》退出数据库

  • 创建数据库
备注:数据库内的指令后都要加";"
create database dcs1==》创建一个新的数据库名称为dcs1
drop database dcs1==》删除数据库dcs1
use dcs1==》切换和进入数据库(Database changed表示成功进入
use mysql==》切换回mysql数据库
select database();==》查看当前已经进入到哪个数据库中
create table test (id int(20)primary key auto_increment,score float(20,2)not null,name varchar(20),phone bigint(20)default 18611112222,time date);==》进入dcs1数据库创建一个test表格
desc test1;==》查看表结构
  • 【表结构的名词解释】

Field
type
null
key
default
Extra
字段约束
数据类型约束
为空约束
主键约束
默认值约束
额外备注
int:最大存储值(10位):2147483647
bigint:手机号码专用,长整型
float:浮点型,(20,2)后面的,2是小数点后2位
varchar:长字符型"xiaoxiao"
char:单字符'lingling'
date:"2021-11-30"

【数据库中常用的约束有哪些?】
not null==》非空约束
primary key==》主键约束,里面的值必须是唯一的,不能重复
default==》默认值约束,若不输入值,字段永远是初始设定的值
auto_increment==》自增长约束
foreign key==》外键约束

  • 【对于表结构的操作】

1、show tables;==》查看当前库的所有表格
备注:mysql数据库中有三个系统数据库,这三个系统数据库不可以删除
2、alter table test(修改当前表格test内容)
  • add class int(20) first==>添加一个新字段在最前面
  • add sex int(20) after id;==》添加sex字段到id字段后面
  • add(age1 int(20),age2 int(20));==》同时添加两个字段,可添加到最后面,不能加到最前面
  • modify class int(20) after id;==》调整class字段到id字段后面
  • drop sex;==》删除sex字段
  • drop age1,drop age2;==》同时删除age1,age2两个字段
  • change id id int(20);==》删除自增长且不改变字段名称
  • change id id int(20)auto_increment;==》不改变字段名称,增加自增长
  • drop primary key;==》删除主键(要先删除自增长才能删除主键)
  • change phone phone int(20) not null==》把phone数据类型修改为int且加上not null约束
备注:手机号一定要使用bigint的原因--使用int会使手机号码限定于2147483647这个值,只能小不能大

  • 【对于表数据的操作】

1、insert into test......插入数据:
  • test(id,score,name,phone,time)values(1,88.99,'xiao',18656784321,'2021-11-30');(单个数据)
  • values(1,88.99,'xiao',18656784321,'2021-11-30');(单个数据)
  • test(id,score,name,phone,time)values(3,89.666,"mike",18651886667,"2021-11-30"),(4,78.89,"xiaoxiao",18612345678,"2021-11-30");(两条数据)
  • values(5,100,"xiaoli",18956784321,"2021-11-30"),(6,99.99,"xiaop",5857894455,"2021-11-30"),(7,88.98,"xinxin",15805173333,"2021-11-30");(三条数据)

2、insert into test......指定字段插入数据:
  • (id)values(8);==》插入id字段内容为8
  • (score)values(90.99);==》插入score字段内容为90.99
备注:此时若设置了自增长约束,则id自动增加1;若未设置自增长约束,则显示其他序号id












分享至 : QQ空间
收藏

0 个回复

您需要登录后才可以回帖 登录 | 立即注册