mysql数据库的操作,mysql数据库的骨干采取命令计算

mysql数据库是一个常用的关系型数据库

–01 mysql 数据库的操作

关系型数据库核心元素有哪些?

    — 链接数据库

 主键:特殊字段,用来唯一标识记录的唯一性
 字段:数据列
 记录:数据行
 数据表:数据行的集合
 数据库:数据表的集合

mysql -uroot -pmysql

安装、启动、停止、重启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 -uroot -p

 

mysql

mysql 数据库的操作

    — 退出数据库

 
  
1.连接数据库
  
 mysql -u root -pmysql

    quit/exit/ctrl + d

 
  不显示密码连接
  
 python@ubuntu:~/Desktop$ mysql -u root -p
  
 Enter password: mysql
 

    — sql语句最后需要有分号;结尾

   
  退出数据库
     
 ctrl+l:清除命令屏幕
  
 quitexit

    — 显示数据库版本 version

2.创建数据库
 create database 数据库名 charset=utf8;
 ### 创建数据库时一定要记得解决编码问题

    select version();

 

    — 显示时间

3.查看当前使用的数据库: select database();
  查看所以数据库:  show databases;
  查看当前数据库中所有表: show tabes;
  查看当前表中所有的列: select * from 表名;
  查看表结构:   desc 表名;

select now();

 

— 查看当前使用的数据库

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
www.350.vip , 外键:  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);

    select database();

 

    — 查看所有数据库

5.查看创建数据库的语句: show create database 库名
  查看创建表的语句:  show create table 表名

show databases;

 

    — 创建数据库

6.使用数据库:  use 数据库名
  删除数据库:  drop database 数据库名
  删除表:  drop table 表名
  删除表–删除字段(列)alter table 表名 drop 列名

    — create database 数据库名 charset=utf8;

 

create database python01;

7.表的修改:

create database python01 charset=utf8;

 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);

    — show create database ….

 3) 修改表-修改字段:不重命名版
     alter table 表名 modify 列名 类型及约束;
     alter table t_classes modify logo varchar(20) not null default
‘人生苦短,我用Python’;
  

  show create database python01;

8.数据的增删改查(curd)
  curd的解释:
代表创建(Create)、更新(Update)、读取(Retrieve)和删除(Delete)

    — 使用数据库

  1)增加

    — use 数据库的名字

 1.全列插入
 insert [into] 表名 values(…)   #into可用可不用
 主键字段 可以用 0  null   default 来占位
 如:向classes表中插入 一个班级
 insert into t_classes values(0,’python02′);
   
 insert into t_classes values(0,’python01′);

    use 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); #这里张飞后面的一是创建表时,列表性别列对象的枚举参数顺序

    — drop database 数据库名;

 3.多行插入
 insert into 表名(name,gender) values(“小张1”,1),(“小张2”,2);
 insert into t_students(name,gender) values(‘小王’,2),(‘大王’,3);

  drop database python01;

  2)修改
  update 表名 set 列1=值1,列2=值2… where 条件;

–02 数据表的操作

 1.全部修改
 update t_students set height=188.88 ;

    — 查看当前数据库中所有表

 2.按条件修改
 update t_students set gender=’女’ where id=1;

  show tables;

 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;

— int unsigned 无符号整形

 2.指定条件查询
 select * from t_students where name=’李白’;

    — auto_increment 表示自动增长

 3.查询指定列
 select 列1,列2,… from 表名;
 select name,age from t_students;

    — not null 表示不能为空

  4)删除

    — primary key 表示主键

 1.物理删除 #删除后不可恢复
 delete from 表名 where 条件
 delete from t_students where id=4;

    — default 默认值

 2.逻辑删除 #对要删除的对象做标记,可恢复(用一个字段来表示
这条信息是否已经不能再使用了)
 需要给students表添加一个 isdelete 字段 bit 类型才能进行逻辑删除
 isdelete=1 就是代表删除标记;is_delete=0 就是恢复 #用二进制0和1表示
 update t_students set isdelete=1 where id=5 ;

    — create table 数据表名字 (字段 类型 约束[, 字段 类型 约束]);

create table yyyy(

id int unsigned not null primary key auto_increment,

name varchar(20) not null,

        age int

);

    — 查看表结构

    — desc 数据表的名字;

desc yyyy;

    — 创建 classes 表(id、name)

create table classes(

id int unsigned not null primary key auto_increment,

name varchar(20) not null

);

    — 创建 students 表(id、name、age、high (decimal)、gender
(enum)、cls_id)

    create table students(

id int unsigned not null primary key auto_increment,

name varchar(20) not null,

age int unsigned,

high decimal(5,2),

gender enum(“男”,”女”,”中性”,”保密”) default “保密”,

cls_id int

);

    — 查看表的创建语句

    — show create table 表名字;

  show create table yyyy;

    — 修改表-添加字段 mascot (吉祥物)

    — alter table 表名 add 列名 类型;

  alter table classes add jixiangwu varchar(20) default “保时捷”;

    — 修改表-修改字段:不重命名版

    — alter table 表名 modify 列名 类型及约束;

alter table classes modify jixiangwu varchar(30) default “一个理想”;

    — 修改表-修改字段:重命名版

    — alter table 表名 change 原名 新名 类型及约束;

alter table classes change jixiangwu mascot varchar(20) default “蛇”;

发表评论

电子邮件地址不会被公开。 必填项已用*标注