数据库的操作:
1、Windows中如何使用CMD进入MySQL数据库:
    1 Windows+R  -->  输入 cmd 运行
    2 C:\Users\***>D:    # 安装在D盘中
      D:\>cd D:\MySQL\mysql\bin    # 切换到D盘MySQL安装的bin目录下
    3 D:\MySQL\mysql\bin>mysql -hlocalhost -uroot -p    # 开始链接MySQL数据库
      Enter password:**********    # 输入密码
    4 mysql>    # 链接成功
    5 mysql>show databases;    # 显示所有的数据库(必须以分号结束)
    6 mysql>create database demo;    # 创建一个新的数据库demo
    7 mysql>exit;    # 退出数据库
2、其他命令:
    1、select now();    # 显示当前数据库的时间
    2、select version();    # 显示当前数据库的版本
3、重要命令:
    1、create database python04;    # 创建一个新数据库python04
    2、create database python04 charset=utf8;    # 指定编码utf8表示,默认是拉丁
    3、show create database python04;    # 显示创建的数据库信息
    4、drop database python04;    # 删除python04数据库
 
数据表的操作:
    1、select database();    # 查询当前使用的数据库
    2、use python04;    # 使用python04数据库
    3、show tables;    # 显示当前数据库下的所有表
    4、创建表:
        -- auto_increment 表示自动增长
        -- not null 表示不能为空
        -- primary key 表示主键
        -- default 默认值
        -- create table 数据表名字(字段 类型 约束[,字段 类型 约束]);
        create table xxxx(id int, name varchar(30));   # 创建一个数据表
        create table yyyy(id int primary key not null auto_increment, name varchar(30));
    5、desc xxxx;    # 查看表结构
 
创建一个students表(id、name、age、high、gender、cls_id)
create table students(
    id int unsigned not null auto_increment primary key,     #  (unsigned表示无符号范围0~255)
    name varchar(30),
    age tinyint unsigned default 0,   
    high decimal(5,2),
    gender enum("男","女","保密") default "保密" not null,
    cls_id int unsigned
    );
desc sutdents;    # 查看student表
 

插入数据:
    insert into students values(0,"二狗",24,178.88,"男",0);
删除数据:
    delete from students where id=1;
查看数据:
    select * from students;
查看表的创建语句:
    show creat table students;
数据的增删改查:
-- 修改表-添加字段:
-- alter table 表名 add 列名 类型;
  alter table students add birthday datetime;
 
-- 修改表-修改字段:不重命名版
-- alter table 表名 modify 列名 类型及约束;
  alter table students modify birthday date;
 
-- 修改表-修改字段:重命名版
-- alter table 表名 change 原名 新名 类型及约束;
  alter table students change birthday birth date default "1997-01-02";
 
-- 修改表-删除字段
-- alter table 表名 drop 列名;
  alter table students drop high;
 
-- 删除表
-- drop table 表名;
 
增删改查:
-- 增加
  -- 全列插入
  -- insert [into] 表名 values(...)
  -- 主键字段 可以用 0 null default 来占位
  -- 向calsses表中插入一个班级
  insert into classes values(0, "菜鸟班");
 
  -- 向students表插入一个学生信息
  insert into students values(0, "小李飞刀", 20, "女", 1, "1990-1-1");
  insert into students values(null, "小李飞刀", 20, "女", 1, "1990-1-1");
  insert into students values(deauft, "小李飞刀", 20, "女", 1, "1990-1-1");
 
  -- 部分插入
  -- insert into 表名(列1,...) values(值1,...);
  insert into students (name, gender) values ("小乔", "女");
 
  -- 多行插入
  insert into students (name, gender) values ("大乔", "女"),("貂蝉", "女");
  insert into students values(0, "西施", 20, "女",1,"1990-2-2"),(null, "王昭君", 21, "女",1,"1990-3-4"); 
 
-- 修改
-- update 表名 set 列1=值1,列2=值2... where 条件;
update students set gender=1;  # 全部都该了
update students set gender=1 where name="小李飞刀";  # 只要是name是小李飞刀的,都改了
update students set gender=1 where id=3;  # 只对id=3的进行了修改
 
-- 查询的基本使用
  -- 查询所有列
  -- select * from 表名;
  select * from students;
 
  -- 定条件查询
  select * from students name="小李飞刀";  # 查询name为小李飞刀的所有信息
  select * from students id>3;  # 查询id>3的所有信息
 
  -- 查询指定列
  -- select 列1,列2,...,from 表名;
  select name,gender from students;
  
  -- 可以使用as为列或表指定别名
  -- select 字段[as 别名],字段[as 别名] from 数据表 where ...;
  select name as 姓名,gender as 性别 from students;
 
  -- 字段的顺序
  select gender as 性别,name as 姓名 from students;
 
-- 删除
  -- 物理删除
  -- delete from 表名 where 条件
  delete from students;
  delete from students where name="小李飞刀";
 
  -- 逻辑删除
  -- 用一个字段来表示 这条信息是否已经不能再使用了
  -- 给students表添加一个is_delete字段 bit 类型
  alter table students add is_delete bit default 0;
  update students set is_delete=1 where id=6;
 
注:1.  # 表示注释(python用习惯了),MySQL中的注释用的是 -- 
2.  看的黑马培训机构的python视频,根据视频的内容进行整理的

1.MySQL的基本使用的更多相关文章

  1. Hadoop 中利用 mapreduce 读写 mysql 数据

    Hadoop 中利用 mapreduce 读写 mysql 数据   有时候我们在项目中会遇到输入结果集很大,但是输出结果很小,比如一些 pv.uv 数据,然后为了实时查询的需求,或者一些 OLAP ...

  2. mysql每秒最多能插入多少条数据 ? 死磕性能压测

    前段时间搞优化,最后瓶颈发现都在数据库单点上. 问DBA,给我的写入答案是在1W(机械硬盘)左右. 联想起前几天infoQ上一篇文章说他们最好的硬件写入速度在2W后也无法提高(SSD硬盘) 但这东西感 ...

  3. LINUX篇,设置MYSQL远程访问实用版

    每次设置root和远程访问都容易出现问题, 总结了个通用方法, 关键在于实用 step1: # mysql -u root mysql mysql> Grant all privileges o ...

  4. nodejs进阶(6)—连接MySQL数据库

    1. 建库连库 连接MySQL数据库需要安装支持 npm install mysql 我们需要提前安装按mysql sever端 建一个数据库mydb1 mysql> CREATE DATABA ...

  5. MySQL高级知识- MySQL的架构介绍

    [TOC] 1.MySQL 简介 概述 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL是一种关联数据库管理系统,将数据保存在不同的表中,而 ...

  6. 闰秒导致MySQL服务器的CPU sys过高

    今天,有个哥们碰到一个问题,他有一个从库,只要是启动MySQL,CPU使用率就非常高,其中sys占比也比较高,具体可见下图. 注意:他的生产环境是物理机,单个CPU,4个Core. 于是,他抓取了CP ...

  7. 我的MYSQL学习心得(一) 简单语法

    我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...

  8. Entity Framework Core 实现MySQL 的TimeStamp/RowVersion 并发控制

    将通用的序列号生成器库 从SQL Server迁移到Mysql 遇到的一个问题,就是TimeStamp/RowVersion并发控制类型在非Microsoft SQL Server数据库中的实现.SQ ...

  9. Docker笔记一:基于Docker容器构建并运行 nginx + php + mysql ( mariadb ) 服务环境

    首先为什么要自己编写Dockerfile来构建 nginx.php.mariadb这三个镜像呢?一是希望更深入了解Dockerfile的使用,也就能初步了解docker镜像是如何被构建的:二是希望将来 ...

  10. 当忘记mysql数据库密码时如何进行修改

    因为长时间没有使用数据库了,或者把密码改完之后就忘了数据库密码,不能正常进入数据库,也无法修改密码,有一个简单的常用修改密码方式: 1.首先找到和打开mysql.exe和mysqld.exe所在的文件 ...

随机推荐

  1. poj1015 Jury Compromise[背包]

    每一件物品有两个属性.朴素思想是把这两种属性都设计到状态里,但空间爆炸.又因为这两个属性相互间存在制约关系(差的绝对值最小),不妨把答案设计入状态中,设$f[i][j]$选$i$个人,两者之差$j$. ...

  2. 交叉熵和softmax

    深度学习分类问题结尾就是softmax,损失函数是交叉熵,本质就是极大似然...

  3. GridView设置右键菜单

    一.控件设定: 1.页面添加ContextMenuStrip控件: 2.ContextMenuStrip添加菜单项: 3.gridControl找到ContextMenuStrip属性,设置成刚添加C ...

  4. QT:提高QT Creator编译速度,配置预编译头Stable.h

    提高QT Creator编译速度,配置预编译头Stable.h QT Creator支持预编译头提高编辑速度,网上有些教程写得不详细,走了弯路,具体实现方法如下. (1)工程.PRO文件加入下面代码 ...

  5. luogu P1362 兔子数 x

    P1362 兔子数 题目描述 设 S(N ) 表示 N 的各位数字之和,如 S(484) = 4+8+4 = 16, S(22) = 2+2 = 4.如果一个正整数满足 S(x*x) = S(x) * ...

  6. JavaWeb_(设计模式)单例模式

    菜鸟教程 传送门 单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一.这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式. 这种模式涉及到一个单一的类,该 ...

  7. WordPress 主题开发:从入门到精通(必读)

    本专栏介绍如何开发设计你自己的 WordPress 主题.如果你希望了解更多如何安装和应用主题的内容,请参阅应用主题文档.本文的内容不同于应用主题,因为所讨论的是编写代码去构建你自己的主题的技术内容, ...

  8. Springboot 使用 webSocket

    介绍 WebSocket是HTML5开始提供的一种在单个 TCP 连接上进行全双工通讯的协议.在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进 ...

  9. 四叉树的js实现

    基于 https://gamedevelopment.tutsplus.com/tutorials/quick-tip-use-quadtrees-to-detect-likely-collision ...

  10. Eclipse控制台输出中文乱码问题的解决

    啥都不说,上图: 1.console控制台打印乱码 2.右键: Run As --> Run Configurations 3.找到common项,在“Encoding”栏,看到当前用的是默认“ ...