数据库的操作:
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. 京东POP店铺使用京东物流切仓操作方法

    首先进入京东物流工作台:https://wl.jdwl.com/ 在运营管理中,点击店铺商品 然后看截图操作

  2. C# 计时函数(毫秒)

    using System; using System.Diagnostics; using System.Runtime.InteropServices; using System.Threading ...

  3. js 两个页面的传值 可以用父页面 子页面做

    js  两个页面的传值  可以用父页面 子页面做 比如弹窗  将值传到子页面的时候  用get超长

  4. Nowcoder 练习赛26 D xor序列 ( 线性基 )

    题目链接 题意 : 中文题.点链接 分析 : 对于给定的 X 和 Y 假设存在一个 Z 使得 X (xor) Z = Y 做一个变形 X (xor) Z (xor) Y = 0 X (xor) Y = ...

  5. 计算几何 点对处理 #345 (Div. 2) C. Watchmen

    题目:给你n(<=2*1e5)个点,求其中有多少个点对之间的连线向量平行坐标轴: #include <iostream> #include <cstdio> #inclu ...

  6. Spark-PySpark sql各种内置函数

    _functions = { 'lit': 'Creates a :class:`Column` of literal value.', 'col': 'Returns a :class:`Colum ...

  7. [CSP-S模拟测试]:真相(模拟)

    题目传送门(内部题106) 输入格式 第一行为一个正整数$T$,表示数据组数. 接下来$T$组数据,每组数据第一行一个正整数$n$表示$OIer$,接下来$n$行,第$i$行表示编号为$i$的人所说的 ...

  8. 20道HTML基础面试题(附答案)

    以下是我整理的一些HTML的基础面试体,并自己整理了答案. 1 DOCTYPE有什么作用?标准模式与混杂模式如何区分?它们有何意义? 告诉浏览器使用哪个版本的HTML规范来渲染文档.DOCTYPE不存 ...

  9. Struts2拦截器和过滤器的区别?

    ①过滤器依赖于Servlet容器,而拦截器不依赖于Servlet容器. ②Struts2 拦截器只能对Action请求起作用,而过滤器则可以对几乎所 有请求起作用. ③拦截器可以访问 Action上下 ...

  10. 创建新文件(包括上级文件夹),获取外置SD卡的根目录

    public String hebGetExternalRootDir(String externalAndriodSubDirPath){ if ( externalAndriodSubDirPat ...