【数据库】
一、关系型数据库:
1.Oracle 甲骨文 付费 ==》大型企业使用
2.MySQL ==》开源(不收费,开放源代码),中小型企业、创业型公司
3.SQL server ==》微软
二、安装mysql:
1.yum install mysql #mysql客户端
2.yum install mysql-server #mysql服务端
mysql启动指令:
1.service mysqld status 查看数据库的状态
2.service mysqld start 启动MySQL数据库
3.service mysqld restart 重启MySQL数据库
mysql密码设置与进入指令:
1.mysql -uroot -p 使用root用户访问数据库,第一次安装数据库首次访问的时候不需要输入密码。-u表示user用户的意思,-p表示password密码的意思。
2.mysqladmin -uroot password '123456' 给访问数据库的root用户设置密码。
3.mysql -uroot -p123456 使用密码的方式去访问
eg:
[root@192 /]# mysql -uroot -p 也可以在提示输入密码的地方输入密码
Enter password: #输入密码
数据库指令操作:
mysql> show databases; 查看所有数据库有哪些,命令后面要加 ; 分号
在mysql交互界面输入的命令都要加分号,在Linux操作界面不需要加分号。
退出数据库操作界面
mysql> exit; 退出数据库操作
mysql> quit;
mysql> Ctrl+c 直接退出
mysql> Ctrl+z 也可以直接退出
mysql> create database dcs8; 创建一个名为dcs8的数据库
mysql> drop database dcs8; 删除dcs8这个数据库
mysql> use dcs8; 进入到dcs8数据库
mysql> show tables; 显示当前数据库下面有哪些表
创建一个名为test的表
create table test(id int(20) primary key auto_increment,name varchar(20) not null,score float(20,2),phone bigint(20) default 15366667777,time date);
数据类型
int 存储整数 范围(-2147483647,2147483647) int(20) 2147483647
bigint 存储整数 范围大于2147483647 11位的手机号码 bigint(5)
float 浮点数 默认保存6位精度的数字 float(20,2)
varchar 存储字符 varchar(10)==>6
char
date 日期的格式 “”
Field ==>字段 id name score phone time
type ==>类型为int 整型 char和varchar存储数据的时候都需要加上单引号或者双引号,一般是中文或者字符串,比如 ‘小周’
float 浮点型,默认保存6位 float(20,2)保留小数点后面的2位
date 日期类型,日期类型在存储数据的时候也需要加引号
常见的约束有哪些?非空约束 not null==>表示当前这个字段对应的值不能为空主键约束 primary key==>用来约束主键对应的值不能重复,也不能为空(设置了主键约束的字段默认就不能为空)。外键约束 foreign key默认值约束 Default==>当往这个表当中插入数据的时候不给phone字段插入新的值,则默认用15366667777自增长约束 auto_increment==>当往这个表中插入数据,id字段的值会自动加1输入的语法有报错,在near后面的引号附近去查看错误。数据库操作步骤show databases; 查看数据库use dcs8; 进入到dcs8数据库show tables; 查看有哪些表创建一个表:(create table + 表名(字段+类型+约束,字段2+类型+约束))create table test(id int(20) primary key auto_increment,name varchar(20) not null,score float(20,2),phone bigint(20) default 15366667777,time date);desc test; 查看test表的表结构。alter table test rename test1; 把test表改为test1表alter table test1 rename test; 把test1表改为test表alter table test change id sid int(20); 把id字段改为sid,并且去掉自增长alter table test change sid sid int(20) auto_increment; 给sid字段添加自增长alter table test modify class int(20) after sid; 将class字段移动到sid字段后面create table test1(id int(20)); 创建一个test1表drop table test1; 删除test1这个表alter table test add class int(20) first; ==》增加一个字段放在最前面alter table test add class2 int(20) after id; ==》增加一个字段放在id后面alter table test drop class; ==》删除一个字段alter tables test drop class,drop class2; ==》同时删除两个字段插入数据:insert into 表名(表字段1,表字段2...)values(字段值1,字段值2...)insert into 表名 values(字段值1,字段值2...) ; ==》表中有多少个字段,values值必须要对应select * from 表名; ==》查看表数据alter table test drop primary key; ==》删除主键约束==》先看字段有没有自增长约束,如有需要先删除alter table test change id sid int(20); ==》改id字段为sid并只设置int类型alter table test change sid sid int(20) not null; ==》给id字段增加不为空插入一条数据insert into test(id,name,score,phone,time)values(1,"xiaowang",88.99,15768987654,"2021-09-19");插入二条数据insert into test(id,name,score,phone,time)values(2,"xiaozhu",89,15798987654,"2021-09-18"),(3,"xiaosi",99,16799876789,"2021-09-20");指定插入数据insert into test(id)values(8);insert into test(name)values("zhangsan");插入数据的注意事项:vaechar、char、date 类型的数据,要加引号(单引号或双引号)字段和字段值要一一对应删除表delete from 表名 ==》把所有的数据全部删除(表结构不会删除)delete from 表名 wher 条件 ==》指定行删除某一条数据truncate +表名 ==》把所有的数据全部删除(表结构不会删除) (不占内存)drop table +表名 ==》表数据和表字段结构,全部删除数据库和表结构的操作命令:create databases 、drop、create table、alter table数据库中的对表操作的命令:增 insert into删 delete from 改 update 表名 set 查 select * from修改 update +表名 set 字段名=值 where 条件 update test set name = "zhangsan" where id = 1; 修改id为1的name数据为zhangsan注意事项:1、操作表一定要先进入到对应的库里面 use xx2、看表结构 desc xx3、查看表数据 select * from xx4、show databases 查看有那些库5、show tables 查看有哪些表 ==》进入到库里面去
|
|