mysql数据库服务器启动命令_mysql数据库的基本使⽤命令总
结
mysql数据库是⼀个常⽤的关系型数据库
关系型数据库核⼼元素有哪些?
主键:特殊字段,⽤来唯⼀标识记录的唯⼀性
字段:数据列
记录:数据⾏
数据表:数据⾏的集合
数据库:数据表的集合
安装、启动、停⽌、重启mysql服务器的命令
安装:sudo apt-get install mysql-server
启动:sudo service mysql start
# 查看进程中是否存在mysql服务 ps ajx|grep mysql
停⽌:sudo service mysql stop
重启:sudo service mysql restart
mysql 数据库的操作
1.连接数据库
mysql -u root -pmysql
不显⽰密码连接
python@ubuntu:~/Desktop$ mysql -u root -p
Enter password: mysql
退出数据库
ctrl+l:清除命令屏幕
quit\exit
2.创建数据库
create database 数据库名 charset=utf8;
### 创建数据库时⼀定要记得解决编码问题
3.查看当前使⽤的数据库: select database();
查看所以数据库: show databases;
查看当前数据库中所有表: show tabes;
查看当前表中所有的列: select * from 表名;
查看表结构: desc 表名;
4. 1)创建表需要⽤到的数据类型:
整数: int,bit #int unsigned:⽆符号整形 #tinyint unsigned:⽆符号整形(但范围⽐较⼩,⼀般⽤于年龄) #.bit是位数据类型,长度为1字节;int 是整型;bit 实际就是bool类型,只能是0和1,int的是4个字节的整型
⼩数: decimal #decimal(5,2)表⽰五位数字,两位⼩数点
字符串: varchar,char #varchar:可变字符串
⽇期时间: date, time, datetime
枚举类型: enum
主键: primary key
⾃动增长(增加): atuo_increment
默认值: default
不能为空: not null
外键: foreign key
in
2)表格式:create table 数据表名字(id ⽆符号整形 主键 ⾃动增长(增加) 不能为空; name 可变字符串(数字/范围) 默认值'';age ⽆符号整形默认值0;height ⼩数;gender 枚举 默认值;foreign key ⽆符号整形 默认值);
例如:create table t_students(id int unsigned primary key auto_increment not null,name varchar(10) default '',age tinyint unsigned default 0,height decimal(5,2),gender enum('男','⼥','中性','保密') default '保密',cls_id int unsigned default 0);
5.查看创建数据库的语句: show create database 库名
查看创建表的语句: show create table 表名
6.使⽤数据库: use 数据库名
删除数据库: drop database 数据库名
删除表: drop table 表名
删除表--删除字段(列)alter table 表名 drop 列名
7.表的修改:
1) 修改表-添加字段 kouhao (班级⼝号)
alter table 表名 add 列名 类型及约束;
alter table t_classes add kouhao varchar(20) not null default '⼈⽣苦短,我⽤Python';
2) 修改表-修改字段:重命名版
alter table 表名 change 原名 新名 类型及约束;
alter table t_classes change kouhao logo varchar(20);
3) 修改表-修改字段:不重命名版
alter table 表名 modify 列名 类型及约束;
alter table t_classes modify logo varchar(20) not null default '⼈⽣苦短,我⽤Python';
8.数据的增删改查(curd)
curd的解释: 代表创建(Create)、更新(Update)、读取(Retrieve)和删除(Delete)
1)增加
1.全列插⼊
insert [into] 表名 values(...) #into可⽤可不⽤
主键字段 可以⽤ 0 null default 来占位
如:向classes表中插⼊ ⼀个班级
insert into t_classes values(0,'python02');
insert into t_classes values(0,'python01');
如:向students表插⼊⼀个学⽣信息(id,name,age,height,gender,cls_id)
insert t_students values(null,'⼤乔',23,165.12,'男',1);
insert t_students values(null,'李⽩',23,180.12,'⼥',1);
2.部分插⼊
insert into 表名(列1,...) values(值1,...)
insert into t_students(name,gender) values ('张飞',1); #这⾥张飞后⾯的⼀是创建表时,列表性别列对象的枚举参数顺序3.多⾏插⼊
打开mysql服务命令insert into 表名(name,gender) values("⼩张1",1),("⼩张2",2);
insert into t_students(name,gender) values('⼩王',2),('⼤王',3);
2)修改
update 表名 set 列1=值1,列2=值2... where 条件;
1.全部修改
update t_students set height=188.88 ;
2.按条件修改
update t_students set gender='⼥' where id=1;
3.按条件修改多个值
update students set gender ="",name = "xxx" ;
update t_students set height=165.60,gender=1 where id=3;
3)查询
1.查询所有列
select * from 表名;
select * from t_students;
2.指定条件查询
select * from t_students where name='李⽩';
3.查询指定列
select 列1,列2,... from 表名;
select name,age from t_students;
4)删除
1.物理删除 #删除后不可恢复
delete from 表名 where 条件
delete from t_students where id=4;
2.逻辑删除 #对要删除的对象做标记,可恢复(⽤⼀个字段来表⽰ 这条信息是否已经不能再使⽤了)需要给students表添加⼀个 isdelete 字段 bit 类型才能进⾏逻辑删除
isdelete=1 就是代表删除标记;is_delete=0 就是恢复 #⽤⼆进制0和1表⽰
update t_students set isdelete=1 where id=5 ;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论