数据库

  • 查看所有数据库

show databases;
  • 使用数据库

use 数据库名;
  • 查看当前使用的数据库

select database();
  • 创建数据库

create database 数据库名 charset=utf8;
例:
create database python charset=utf8;
  • 删除数据库

drop database 数据库名;
例:
drop database python;

数据表

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

show tables;
  • 查看表结构

desc 表名;
  • 创建表

  • auto_increment表示自动增长

CREATE TABLE table_name(
  column1 datatype contrai,
  column2 datatype,
  column3 datatype,
  .....
  columnN datatype,
  PRIMARY KEY(one or more columns)
);

例:创建班级表

create table classes(
id int unsigned auto_increment primary key not null,
name varchar(10)
);

例:创建学生表

create table students(
id int unsigned primary key auto_increment not null,
name varchar(20) default '',
age tinyint unsigned default 0,
height decimal(5,2),
gender enum('男','女','人妖','保密'),
cls_id int unsigned default 0
)
  • 修改表-添加字段

alter table 表名 add 列名 类型;
例:
alter table students add birthday datetime;
  • 修改表-修改字段:重命名版

alter table 表名 change 原名 新名 类型及约束;
例:
alter table students change birthday birth datetime not null;
  • 修改表-修改字段:不重命名版

alter table 表名 modify 列名 类型及约束;
例:
alter table students modify birth date not null;
  • 修改表-删除字段

alter table 表名 drop 列名;
例:
alter table students drop birthday;
  • 删除表

drop table 表名;
例:
drop table students;
  • 查看表的创建语句

show create table 表名;
例:
show create table classes;

增删改查(curd)

curd的解释: 代表创建(Create)、更新(Update)、读取(Retrieve)和删除(Delete)

查询基本使用

  • 查询所有列

select * from 表名;
例:
select * from classes;
  • 查询指定列

  • 可以使用as为列或表指定别名

select 列1,列2,... from 表名;
例:
select id,name from classes;

增加

格式:INSERT [INTO] tb_name [(col_name,...)] {VALUES | VALUE} ({expr | DEFAULT},...),(...),...

  • 说明:主键列是自动增长,但是在全列插入时需要占位,通常使用0或者 default 或者 null 来占位,插入成功后以实际数据为准

  • 全列插入:值的顺序与表中字段的顺序对应

insert into 表名 values(...)
例:
insert into students values(0,’郭靖‘,1,'蒙古','2016-1-2');
  • 部分列插入:值的顺序与给出的列顺序对应

insert into 表名(列1,...) values(值1,...)
例:
insert into students(name,hometown,birthday) values('黄蓉','桃花岛','2016-3-2');
  • 上面的语句一次可以向表中插入一行数据,还可以一次性插入多行数据,这样可以减少与数据库的通信

  • 全列多行插入:值的顺序与给出的列顺序对应

insert into 表名 values(...),(...)...;
例:
insert into classes values(0,'python1'),(0,'python2');
insert into 表名(列1,...) values(值1,...),(值1,...)...;
例:
insert into students(name) values('杨康'),('杨过'),('小龙女');

修改

格式: UPDATE tbname SET col1={expr1|DEFAULT} [,col2={expr2|default}]...[where 条件判断]

update 表名 set 列1=值1,列2=值2... where 条件
例:
update students set gender=0,hometown='北京' where id=5;

删除

DELETE FROM tbname [where 条件判断]

delete from 表名 where 条件
例:
delete from students where id=5;
  • 逻辑删除,本质就是修改操作

update students set isdelete=1 where id=1;

备份

  • 运行mysqldump命令

mysqldump –uroot –p 数据库名 > python.sql;

# 按提示输入mysql的密码

恢复

  • 连接mysql,创建新的数据库

  • 退出连接,执行如下命令

mysql -uroot –p 新数据库名 < python.sql

# 根据提示输入mysql密码

Mysql数据库和表的增删改查以及数据备份&恢复的更多相关文章

  1. MySQL数据库之表的增删改查

    目录 MySQL数据库之表的增删改查 1 引言 2 创建表 3 删除表 4 修改表 5 查看表 6 复制表 MySQL数据库之表的增删改查 1 引言 1.MySQL数据库中,数据库database就是 ...

  2. MySQL数据库2表的增删改查

    目录 一.数据表(文件): 1.1增 1.2查看表内数据 1.3改 1.4删除列表 1.5查看库内列表及表结构 1.6复制表结构 二.列类型:(*********) 2.1数字 2.2字符串 2.3时 ...

  3. Mysql数据库二:表的增删改查

    ----建表CREATE TABLE emp( id int PRIMARY key auto_increment, name char(10) , birthday DATE , salary FL ...

  4. MySQL数据库与表的增删改查

    1.值库管理 1.1 查询所有值库 show databases; 1.2 创建一个值库 create database 值库名称 default character set 编码格式名称; 1.3 ...

  5. 使用JDBC分别利用Statement和PreparedStatement来对MySQL数据库进行简单的增删改查以及SQL注入的原理

    一.MySQL数据库的下载及安装 https://www.mysql.com/ 点击DOWNLOADS,拉到页面底部,找到MySQL Community(GPL)Downloads,点击 选择下图中的 ...

  6. Python操作MySQL数据库完成简易的增删改查功能

    说明:该篇博客是博主一字一码编写的,实属不易,请尊重原创,谢谢大家! 目录 一丶项目介绍 二丶效果展示 三丶数据准备 四丶代码实现 五丶完整代码 一丶项目介绍 1.叙述 博主闲暇之余花了10个小时写的 ...

  7. 在python中连接mysql数据库,并进行增删改查

    数据库在开发过程中是最常见的,基本上在服务端的编程过程中都会使用到,mysql是较常见的一种数据库,这里介绍python如果连接到数据库中,并对数据库进行增删改查. 安装mysql的python扩展 ...

  8. python3.6 使用 pymysql 连接 Mysql 数据库及 简单的增删改查操作

    1.通过 pip 安装 pymysql 进入 cmd  输入  pip install pymysql   回车等待安装完成: 安装完成后出现如图相关信息,表示安装成功. 2.测试连接 import ...

  9. Java连接MySQL数据库,并进行增删改查

    1.具体的代码实现 import java.sql.*; public class DatabaseService { /** * Create Connection * * @param dbtyp ...

随机推荐

  1. pip包导出

    用pip对已有的环境做导出准备 1. 使用pip导出当前环境所有依赖包信息文件 pip freeze > requirements.txt 2. 下载所有依赖包到本地 pip install - ...

  2. pycharm中range的应用

    v = range(100) for item in v: print (item) #输出结果是0 1 2 3 ......99 这是在python3中实现的,python2中不一样 下面是一个从大 ...

  3. idea看源码

    idea看源码,可以直接搜索.看接口具体调用的是哪个类里面的方法(多态)

  4. SQL ServerAlways Encrypted Data

    SQL Server 提供了一个加密表上字段的功能, Encrypt Columns ,  比如身份证号码,手机号码,银行账户等等敏感信息.

  5. VSTO 基础随笔

    1.往组合框添加条目 With Me .ComboBox1.Items .Add( "Ports" ) .Add( "Igor" ) End With 2.文本 ...

  6. Google FireBase - fcm 推送 (Cloud Messaging)

    要将 Firebase 添加到您的应用,您需要有一个 Firebase 项目以及适用于您的应用的 Firebase 配置文件. 如果您还没有 Firebase 项目,请在 Firebase 控制台中创 ...

  7. C++进阶:新人易入的那些坑 --1.常量、常指针和指针常量

    声明:以下内容B站/Youtube学习笔记,https://www.youtube.com/user/BoQianTheProgrammer/ Advanced C++. /* why use con ...

  8. 如何使用$.each()与$().each()以及他们的区别

    1.首先,说下$.each(Arry/Object,function(index,val){ //index表示下标,val表示下标对应的值 }) 下面是使用$.each()的几种类型,其中arr2与 ...

  9. nodejs编译遇到的问题

    src\node_contextify.cc:631: Assertion 'args[1]->IsString()' failed. node 10 版本会出现这个问题, 安装natives后 ...

  10. java对文件的基本操作

    package cn.edu.fhj.day009.FileDemo; import java.io.File; import java.io.IOException; public class Fi ...