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.多行插入
 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 ;

mysql数据库的基本使用命令总结的更多相关文章

  1. MySQl数据库常用的DOS命令

    MySQl数据库常用的DOS命令.. 这是第一部分.. 数据库的连接信息:jdbc:mysql://localhost:3306/shxtcom.mysql.jdbc.Driver /*jdbc:sq ...

  2. MySql数据库导出csv文件命令

    MySql数据库导出csv文件命令: MySql数据库导出csv文件命令: mysql> select first_name,last_name,email from account into ...

  3. MySQL数据库入门常用基础命令

    MySQL数据库入门———常用基础命令      数据——公司的生命线,因此在大多数的互联网公司,都在使用开源的数据库产品,MySQL也因此关注度与使用率非常的高,所以做为运维的屌丝们,掌握它的一些基 ...

  4. mysql数据库备份与还原命令

    还原一个数据库:mysql -h localhost -u root -p123456 www 备份一个数据库:mysqldump -h localhost -u root -p123456 www ...

  5. mysql数据库备份及恢复命令mysqldump,source的用法

    还原一个数据库:mysql -h localhost -u root -p123456 www<c:/www.sql 备份一个数据库:mysqldump -h localhost -u root ...

  6. MySql数据库2【常用命令行】

    (一) 连接MYSQL: 格式: mysql -h主机地址 -u用户名 -p用户密码 1.连接到本机上的MYSQL 进入mysql安装目录下的bin目录下,再键入命令mysql -uroot -p,回 ...

  7. 初识MySQL数据库的各种CMD命令窗口下的指令

    今天我们就来看一下数据库的各种命令,以下命令全部是从CMD命令窗口下的命令行输入指令,首先如果如果输入mysql,系统提示"mysql不是内部命令或外部命令.那么这其实是环境变量没有设置好的 ...

  8. ubuntu mysql 数据库备份以及恢复[命令行]

    之所以加了个ubuntu,其实也没什么,就是恢复数据库的时候给幽默了一下,所以特地加上.   写在前面:一直很想好好的学linux命令行.shell编程,幻想自己能够通过学习进而成为命令行高手,游刃于 ...

  9. MySQL 数据库和一些常用命令的使用

        常用命令总结: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 3 ...

随机推荐

  1. 正则表达式备忘录-Regular Expressions Cheatsheet中文版

    正则表达式备忘录Regular Expressions Cheatsheet中文版原文:https://www.maketecheasier.com/cheatsheet/regex/ 测试文件a.t ...

  2. 03_Redis数据类型(List)

    [List类型] Redis采用的是LinkedList. ArrayList: 数组存储.查询快,增删慢. LinkedList:链表存储.增删快,查询慢,查询两端快. Redis的list内部采用 ...

  3. JavaScript基础入门知识

    JavaScript三种使用方式 JavaScript代码屏蔽 JavaScript内容显示的位置 JavaScript中的错误及解决方法 1.语法错误:通过控制台可以检查并解决. 2.逻辑错误:通过 ...

  4. CNN 和RNN 中input 长度不一致问题

    转自:https://www.jianshu.com/p/86d667ee3c62,感谢分享! pad_sequences & Masking layer 上面提到,文本数据也可以用CNN来处 ...

  5. 龙珠直播之swot

    版本 v 0.3 龙珠直播有品牌优势,依托于苏宁PPTV,有大背景,有体育视频资源可用. 龙珠内容没有特色,没有特别火的亮点,定位于体育,没有免费路线,不能吸引大量活跃用户,女主播方式也没十分特点,解 ...

  6. PrintDocument打印、预览、打印机设置和打印属性的方法(较完整) .

    private void Form1_Load(object sender, System.EventArgs e) { //获取或设置一个值,该值指示是否发送到文件或端口 printDocument ...

  7. vue项目运行报错:Module bulid failed: Error: Node Sass does not yet support your current environment

    出错起因:      从GitLab clone项目 --> 用 npm install 命令下载依赖包 --> #npm run dev,报错 错误截图: 解决方法:   思路:单独 i ...

  8. nginx封IP脚本

    #!/bin/bash max= confdir=/etc/nginx/conf.d/blockips.conf logdir=/var/log/nginx/access.log echo " ...

  9. jquery在IE8上使用find的问题

    有一个字符串,其中是一个XML文件的内容,但是使用find方法老是不正确(IE8,其他浏览器如Chrome.Firefox),代码如下: var xml="<ServiceResult ...

  10. 动态规划(DP),最长递增子序列(LIS)

    题目链接:http://poj.org/problem?id=2533 解题报告: 状态转移方程: dp[i]表示以a[i]为结尾的LIS长度 状态转移方程: dp[0]=1; dp[i]=max(d ...