Mysql库、表、记录的基本操作
库的操作 ---> 类似于文件夹
- 增:
创建数据库: create database db1;
创建带字符集的数据库: create database db2 charset=utf8;
- 查
查看所有库: show databases;
查看库中的信息: show create database db1;
- 改
修改数据库编码: alter database db1 charset="utf8";
- 删
删除库:drop database db1;
表的操作 ---> 类似于文件
- 操作表前,需要先切换到指定库
语法: use 库名;
- use db1;
-
查看当前所在的库: select database()
- 增
# 约束条件可有可无
# 宽度: 限制某些数据类型的存储大小
添加表:create table 表名(字段名 字段类型(宽度)) 约束条件;
- create table user_info(name varchar(20), age int);
表中添加字段:alter table user_info add salary int;
- 查
查看当前库中所有的表: show tables;
查看表结构: desc user_info;
- 改
修改job值:alter table user_info modify name varchar(28);
修改表编码 alter table user_info charset gbk
修改表名:rename table user_info to user_info2;
列name修改为username:alter table user_info change column name username varchar(100);
- 删
删除表:drop table user_info;
删除sex列:alter table user_info drop sex;
注意:
1.创建表的字段名不能重复;
2.最后一个字段不能在末尾加 , 号
3.字段名必须要有字段类型与宽度
记录 的操作 ---> 类似于文件中的一行行数据
- 增:
语法: insert into 表名 values('字段类型的数据1', 字段类型的数据1);
# 插入一条
- insert into user_info values('tank', 17);
# 插入多条
- insert into user_info values('jason', 71), ('sean', 78);
- 查:
*: 指的是所有
语法: select * from 表名; # 查看表中所有的数据
select * from 表名 where 条件; # 条件成立则查看成功!
-
# 查看 name 字段为 tank 的记录
- select * from user_info where name="tank";
# 查看 name 字段为 tank 的age字段
- select age from user_info where name="tank";
# 查看所有的name:
- select name from user_info;
- 改
语法: update 表名 set 字段名=字段值 where 条件判断; # 若条件成立,则修改成功!
# 修改age为17的记录中name属性为 handsome
- update user_info set name='handsome' where age=17;
# 修改age>16的记录 中name属性为 d_sb
- update user_info set name='d_sb' where age>16;
- 删
语法:alter table user_info drop age
语法:delete from user_info where name='tank' #删除表中名称为“tank”的记录
语法: delete from 表名; # 清空表记录,不提交,可恢复。
语法: truncate table 表名; # 删除,不可恢复
了解:修改表的操作
注意: mysql 关键字不区分大小写
语法:
修改表名
alter table 表名 rename 新表名;增加字段
alter table 表名
add 字段名 数据类型 [完整性约束条件…],
add 字段名 数据类型 [完整性约束条件…]; # 默认添加到最后一列alter table 表名
add 字段名 数据类型 [完整性约束条件…] first; # 添加到第一列alter table 表名
add 字段名 数据类型 [完整性约束条件…] after 字段名; # 添加到某一列之后删除字段
alter table 表名 drop 字段名;修改字段
alter table 表名
modify 字段名 数据类型 [完整性约束条件…]; # 修改数据类型alter table 表名
change 旧字段名 新字段名 旧数据类型 [完整性约束条件…]; # 修改字段名,保留字段类型alter table 表名
change 旧字段名 新字段名 新数据类型 [完整性约束条件…]; # 修改字段名与字段类型
复制表:
复制表结构+记录 (key不会复制: 主键、外键和索引)
create table new_service select * from service;
只复制表结构
create table new1_service select * from service where 1=2; //条件为假,查不到任何记录
Mysql库、表、记录的基本操作的更多相关文章
- python Mysql 库表
Mysql 库表 创建 学生信息库表 学生成绩 库表
- Mysql 库表操作初识
Mysql 库表操作初识 终端登录mysql 这里只演示win下, cmd 终端. 至于怎么在win下, linux, mac安装, 感觉这是一个入门级的百度搜索问题, 安装都搞不定, 确实有点尴尬, ...
- MySQL库表详细操作
昨天我们初始了MySQL,今天我们先从库表方面详细说一下具体操作 一.库操作 1.创建数据库 1.1 语法 CREATE DATABASE 数据库名 charset utf8; 1.2 数据库命名规则 ...
- 二 mysql库表的详细操作
目录 1.库操作 1.创建数据库 2.数据库相关操作 2.表操作 1.存储引擎 2.表介绍 3.创建表 4.查看表结构 5.MySQL的基础数据类型 6.表的完整性约束 7.修改表 alter tab ...
- mysql 库表的操作
MySQL的库.表的详细操作 MySQL数据库 本节目录 一 库操作 二 表操作 三 行操作 一 库操作 1.创建数据库 1.1 语法 CREATE DATABASE 数据库名 charset utf ...
- mysql库表优化实例
一.SQL优化 1.优化SQL一般步骤 1.1 查看SQL执行频率 SHOW STATUS LIKE 'Com_%'; Com_select:执行SELECT操作的次数,一次查询累加1.其他类似 以下 ...
- MySQL库表设计小技巧
前言: 在我们项目开发中,数据库及表的设计可以说是非常重要,我遇到过很多库表设计比较杂乱的项目,像表名.字段名命名混乱.字段类型设计混乱等等,此类数据库后续极难维护与拓展.我一直相信只有优秀的库表设计 ...
- mysql 删除表记录 delete和truncate table区别
MySQL中删除表记录delete from和truncate table的用法区别: mysql中有两种删除表中记录的方法: (1)delete from语句, (2)truncate table语 ...
- Mysql 库表
create database student_info default character set utf8 collate utf8_general_ci; ------------------- ...
- python 存储引擎 mysql(库,表, 行) 单表多表操作 (foreign key) sql_mode pymysql模块讲解
##################总结############### mysql 常用数据类型 整型:tinyint int(42亿条左右) bigint 小数:float double dec ...
随机推荐
- 2019-8-31-PowerShell-拿到最近的10个系统日志
title author date CreateTime categories PowerShell 拿到最近的10个系统日志 lindexi 2019-08-31 16:55:58 +0800 20 ...
- @uoj - 435@ 【集训队作业2018】Simple Tree
目录 @description@ @solution@ @accepted code@ @details@ @description@ 有一棵有根树,根为 1,点有点权. 现在有 m 次操作,操作有 ...
- Mysql查询某个月的每一天的数据
需求:查询最近三个月的每一天的业绩总和 因为最近三个月每个月的天数是不一样,所以不能用这篇文章:Mysql查询最近30天的数据(每天的业绩总和数据) 介绍的用固定多少天去查数据.需要一个新方法. 一. ...
- oracle函数 ceil(x)
[功能]返回大于等于x的最小整数值 [参数]x,数字型表达式 [返回]数字 [示例] select ceil(3.1),ceil(2.8+1.3),ceil(0) from dual; 返回4,5,0
- 微信小程序封装自定义弹窗
最近在做小程序的登录,需要同时获取用户手机号和头像昵称等信息,但是小程序又不支持单个接口同时获取两种数据,因此想到自定义一个弹窗,通过弹窗按钮触发获取手机号事件.记录一下. 具体代码如下: 业务代码中 ...
- 使用colab平台进行训练
https://www.zhongxiaoping.cn/2018/12/01/%E4%BD%BF%E7%94%A8colab%E5%B9%B3%E5%8F%B0%E8%BF%9B%E8%A1%8C% ...
- www的iptables实例
#!/bin/bash export PATH=/sbin:/usr/sbin:/bin:/usr/bin #加载相关模块 modprobe iptable_nat modprobe ip_nat_f ...
- C++的价值
In May 2010, the GCC steering committee decided to allow use of a C++ compiler to compile GCC. The c ...
- python模块之包
包:将解决一类问题的模块放在同一目录下就形成了一个包 为了更好的了解包,我们就模拟创建一个包 import os os.makedirs('glance/api') os.makedirs('glan ...
- 设置html各元素不可点击(持续更新)
1.span <span id="nextStep" onclick="right">下一页</span> $("#nextS ...