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 ...
随机推荐
- 15-2 mysql的数据类型
一.整数类型 整数类型:TINYINT SMALLINT MEDIUMINT INT BIGINT 作用:存储年龄,等级,id,各种号码等 ============================== ...
- include 语句中使用双引号与括号有什么区别?
Include 的语法 你在学习如何构造函数时,看到了不同的 include 语句: # include <iostream> # include "distance.h&quo ...
- Mysql到Java数据类型映射的JDBC规范
- 数据库设计mysql字段不默认为NULL原因搜集
索引不会包含有NULL值的列 只要列中包含有NULL值都将不会被包含在索引中,复合索引中只要有一列含有NULL值,那么这一列对于此复合索引就是无效的.所以我们在数据库设计时不要让字段的默认值为NULL ...
- spark sql thrift server
### create data ## cat ## echo "$(date ;echo ## cat }'";exit}' ..} do passwd) echo "$ ...
- Node.js 安装第三方模块包(npm),通过 package.json配置信息安装项目依赖的模块
npm下载安装的第三方模块包官网(提供包名和使用方法):https://www.npmjs.com/ 淘宝镜像(国内,比较快):https://npm.taobao.org/ commonjs01.j ...
- [转]Java多线程学习(总结很详细!!!)
Java多线程学习(总结很详细!!!) 此文只能说是java多线程的一个入门,其实Java里头线程完全可以写一本书了,但是如果最基本的你都学掌握好,又怎么能更上一个台阶呢? 本文主要讲java中多线程 ...
- 深入Java线程管理(一):线程的实现方式
Java的线程实现方式一共有三种,继承Thread.实现Runable接口,实现Callable接口.不过实现Runnable接口与实现Callable接口的方式基本相同,只是Callable接口里定 ...
- springboot activiti工作流简单示例
最近一直研究springboot,根据工作需求,工作流需要作为一个单独的微服务工程来提供给其他服务调用,现在简单的写下工作流(使用的activiti)微服务的搭建与简单使用 jdk:1.8 数据库:m ...
- vue样式加scoped后不能覆盖组件的原有样式解决方法
<style scoped> </style> 为了vue页面样式模块化,不对全局造成污染,建议每个页面的style标签加上scoped,表示他的样式只属于当前的页面,父组件的 ...