找回密码
 立即注册

推荐阅读

  • 便民服务
  • 关注我们
  • 社区新手
数据库
关系型数据库
Oracle》收费的,大型公司使用。例如百度;全称是甲骨文公司,Oracle是他的一个产品
MySQL》开源免费的。也会是属于Oracle公司
sql server>
非关系型的数据库
hbase>大数据
Redis》可以,values,键值对形式。缓存型的数据库
mangodbyi>一个键,一个值。

安装数据库
yum install >在线下载并安装
yum install  mysql 客户端
yum  install mysql-server下载服务端
[root@192 /]# rpm -qa|grep -i mysql 检查数据库安装状态
mysql 服务器的启动和关闭
[root@192 /]# service mysqld start>启动数据库,每次进入都需要启动
[root@192 /]# service mysqld stop关闭数据库
[root@192 /]# service mysqld status 查询数据库启动状态
[root@192 /]# service mysqld restart 重启数据库

mysqld后面的d代表的是一个守护进程demon
mysqld (pid  31615) is running...  pid代表的是进程号
[root@192 /]# netstat -nltp 查询所有进程

登录MySQL数据库》第一次登录不需要密码(公司必须有)
[root@192 /]# mysql -uroot -p
Enter password:第一次不用
-u用户 -p密码
我们默认MySQL中有一个用户root
mysql> show databases;查看数据库中的所有库
;数据库中的所有指令都需要加“;”是默认的格式
退出数据库:按住ctrl +c
[img=438,0]C:\Users\Administrator\AppData\Local\YNote\data\y864204842@163.com\c408ea65e79c4bf59667862419d41fa7\捕获.png[/img]
[root@192 /]# mysqladmin -uroot password "123456"
设置密码,不在数据库里面输入
[root@192 /]# mysql -uroot -p123456
修改完密码登录后登录mysql数据库2

创建一个新的数据库
mysql> create database dcs1;
删除一个库(千万不要删除系统库)
mysql> drop database dcs1;


数据库密码:
1跳过权限不输入密码进入MySQL
mysql> vim /etc/my.cnf ,在socket =/var下面输入skip-grant-tables
service mysql restart>重启数据库
mysql> use dcs1; 进入到dcs1数据库(进入和切换就使用这个指令)
mysql> select database();查看当前所进入的数据库

mysql> desc test; 查看表结构

fieled>字段
type》数据类型
null》是否可以为空
key》primary key 主键
default》默认值约束
extra》额外的备注,auto_incorement自增长约束

数据中常用的数据类型
数值型:
int 》最大储存值2147483647(最大存储值为10位)
bigint》手机号只能用bigint来存储
float》score|float(20,2),2是精度,代表的是几位数

文本型【 varchar 和 char 存的数据需要加单引号或者双引号】
varchar>存字符串,字符位数多
char>存字符,单个字符

日期型:date存的数据需要加单引号或者双引号
date》“2022-1.1.”

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

【对于表结构的操作】
show tables;查看数据库中有多少个表格
mysql> alter table test rename test1;修改表格名称(test>test1)
mysql> 把ID字段修改为sid

mysql> alter table test change id id int(20);删除自增长且不改变字段名称;
自增长约束是结合主键去使用的;
show tables;  ==》查看当前库中有多少个表
alter table test rename test1;  ==》把 test 表的名字修改为test1
alter table test change id sid int(20);  ==》把id字段改为sid,并且去掉了自增长
alter table test change sid id int(20) auto_increment; ==》把sid字段改为id,并且加上自增长约束
alter table test add class int(20) first;  ==》 添加一个字段在最前面
alter table test add sex int(20) after id;  ==》添加sex字段到id后面
alter table test add(age1 int(20),age2 int(20)); ==》添加两个字段,只能添加到最后面,不能添加到最前面
alter table test modify class int(20) after id; ==》调整把class字段放在id字段后面
alter table test drop sex; ==》删除sex字段
alter table test drop age1,drop age2;  ==》删除两个字段
alter table test change id id int(20);  ==》删除自增长且不改变字段名称
alter table test change id id int(20)auto_increment;  ==》 不改变字段名称增加自增长
alter table test drop primary key; ==》删除主键
备注: 删除主键,先删除自增长
自增长约束是结合主键去使用的

【对于表中数据的操作】
单个数据插入:
insert into test(id,score,name,phone,time)values(1,89.99,'xiaoliu',18611223311,'2021-11-30');
insert into test values(2,78.66,'xiaoliu1',18982475616,'2021-11-30');
多个数据的插入:
insert into test(id,score,name,phone,time)values(3,66.666,'xiaoliu2',13688889999,'2021-11-30'),(4,78.89,'xiaoliu3',13666668888,'2021-11-30');  ==》插入两条数据
insert into test values(5,100,'xiaoxie',default,'2021-11-30'),(6,99.99,'xiaoshi',13688889999,'2021-11-30'),(7,68.99,'xiaozhang',18966669999,'2021-11-30');  ==》插入三条数据
备注: 0 不等于null, null 指的是一个空的属性,0 代表的是一个值

指定字段插入数据
insert into test(id)values(8);  ==》帮id字段插入值
insert into test(score)values(88.88);  ==》把score插入值的时候id字段对应的值会自动加1,因为设置了自增长
int  bigint
alter table test change phone phone int(20) not null;  ==》把phone数据类型修改为int且加上not null约束
所有的手机号都改为:2147483647
insert into test(phone)values(2147483648);  ==》还是显示2147483647
insert into test(phone)values(2147483646);  ==》正常显示 2147483646





【面试题】数据库表里面的一个字段怎么测试呢?》写出测试点
数据类型:例如phone,类型int,1111111111插入失败,11111111111插入成功
约束类型
存取的值取边界值

分享至 : QQ空间
收藏

0 个回复

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