MySQL数据库之表的增删改查
MySQL数据库之表的增删改查
1 引言
1、MySQL数据库中,数据库database就是硬盘上的一个文件夹,表table就是文件夹里面的一个文件
2、表中的一条记录就相当于文件中的一行内容,与excel表类似,表table中有不同的标题,称之为字段
3、本节对表结构做增删改查,即创建表、删除表、修改表、查看表结构,至于表中数据的增删改查日后单独总结
2 创建表
1、创建一张表,需要建一个表结构,需要表名、表中字段的名字,字段的数据类型及约束条件等
#建表语法:
create table 表名(
字段1 数据类型[(宽度) 约束条件],
字段2 数据类型[(宽度) 约束条件],
字段3 数据类型[(宽度) 约束条件],
......) engine=innodb;
#注意:
1、一张表中字段名不能相同
2、字段的数据类型不能少、宽度和约束条件是可选的
3、搜索引擎默认engine=innodb,可默认不写
#示例:
#建一张学生表,包含学生id\姓名\年龄\性别\分数5个字段
create table student(
id int,
name char(10) not null, #约束条件,not null 不为空
sex char(10),
score int);
#注意:
1、每个字段用逗号隔开,最后一个字段不用逗号
2、int数据类型可以不指定宽度,日后再解释
3 删除表
1、不同的删除方式会有不同的效果,说白点就是有的删除方式删除的干净,而有的则不是
2、方式1的 drop,彻底删除表全部数据和表结构,立刻释放磁盘空间
3、方式2的 truncate,删除表全部数据,保留表结构,立刻释放磁盘空间
4、方式3的 delete from,删除表全部数据,表结构不变,对于 MyISAM 会立刻释放磁盘空间,InnoDB 不 会释放磁盘空间;这种删除后表中 auto_increment的字段会有影响,需注意!
#方式1:
drop table 表名;
#方式2:
truncate table 表名;
#方式3:
delete from 表名;
4 修改表
1、修改表指的是:修改表名、字段名及其约束条件,和删除字段等操作
2、修改字段时,需要指定数据类型,不管是否修改数据类型
3、增加字段、可以一次增加多个,用逗号隔开;也可以指定新字段的位置
#语法:
#1修改表名
alter table 表名 新表名;
#2修改字段约束条件
alter table 表名 modify 字段名 数据类型[(宽度) 约束条件];
#3修改字段名
alter table 表名 change 旧字段名 新字段名 旧数据类型[(宽度) 约束条件];
alter table 表名 change 旧字段名 新字段名 新数据类型[(宽度) 约束条件];
#4增加字段
alter table 表名 add 新字段名1 数据类型[(宽度) 约束条件],
新字段名2 数据类型[(宽度) 约束条件];
alter table 表名 add 新字段名 数据类型[(宽度) 约束条件] first;
alter table 表名 add 新字段名 数据类型[(宽度) 约束条件] after 字段名;
#5删除字段
alter table 表名 delete drop 字段名;
5 查看表
#语法:
desc 表名; #desc是describe的简写
注意:show create table t1\G; #查看表详细结构,可加\G
6 复制表
1、复制表分两种:完全复制(数据和结构),仅复制表结构
2、方式1的复制会复制原表的数据和结构,但key不会复制(primary key\unique key\索引)
3、方式2的复制是因为存在where 条件是Flase,过滤掉了多有数据,就仅剩表结构
4、推荐方式3的复制表结构
#1完全复制
create table 新表名 select * from student; #方式1
#2 仅复制表结构,
create table 新表名 select *from student where 1=2; #方式2
create table 新表名 like student; #方式3
MySQL数据库之表的增删改查的更多相关文章
- Mysql数据库和表的增删改查以及数据备份&恢复
数据库 查看所有数据库 show databases; 使用数据库 use 数据库名; 查看当前使用的数据库 select database(); 创建数据库 create database 数据库名 ...
- MySQL数据库 | 数据表的增删改查
MySQL数据的增删改查(crud) 本文结构 一.增加 create 二.修改 update 三.查询 retrieve(简单查询,下篇详细展开) 四.删除 delete 首先,创建简单的class ...
- MySQL数据库2表的增删改查
目录 一.数据表(文件): 1.1增 1.2查看表内数据 1.3改 1.4删除列表 1.5查看库内列表及表结构 1.6复制表结构 二.列类型:(*********) 2.1数字 2.2字符串 2.3时 ...
- Mysql数据库二:表的增删改查
----建表CREATE TABLE emp( id int PRIMARY key auto_increment, name char(10) , birthday DATE , salary FL ...
- MySQL数据库与表的增删改查
1.值库管理 1.1 查询所有值库 show databases; 1.2 创建一个值库 create database 值库名称 default character set 编码格式名称; 1.3 ...
- 使用JDBC分别利用Statement和PreparedStatement来对MySQL数据库进行简单的增删改查以及SQL注入的原理
一.MySQL数据库的下载及安装 https://www.mysql.com/ 点击DOWNLOADS,拉到页面底部,找到MySQL Community(GPL)Downloads,点击 选择下图中的 ...
- Python操作MySQL数据库完成简易的增删改查功能
说明:该篇博客是博主一字一码编写的,实属不易,请尊重原创,谢谢大家! 目录 一丶项目介绍 二丶效果展示 三丶数据准备 四丶代码实现 五丶完整代码 一丶项目介绍 1.叙述 博主闲暇之余花了10个小时写的 ...
- 在python中连接mysql数据库,并进行增删改查
数据库在开发过程中是最常见的,基本上在服务端的编程过程中都会使用到,mysql是较常见的一种数据库,这里介绍python如果连接到数据库中,并对数据库进行增删改查. 安装mysql的python扩展 ...
- python3.6 使用 pymysql 连接 Mysql 数据库及 简单的增删改查操作
1.通过 pip 安装 pymysql 进入 cmd 输入 pip install pymysql 回车等待安装完成: 安装完成后出现如图相关信息,表示安装成功. 2.测试连接 import ...
随机推荐
- dedecms新建内容模型“把数据保存到数据库附加表时出错‘xxx’出错”错误的原因分析和解决方案(转)
把数据保存到数据库附加表 `bc_addonarticle17` 时出错,请把相关信息提交给DedeCms官方.INSERT INTO `bc_addonarticle17`(aid,typeid,r ...
- junit的Test不能使用,报错信息:Test is not an annotation type
在使用junit的Test做测试时,注解@Test报错”Test is not an annotation type”,发现是因为测试类的类名命名为了Test,所以导致错误. 测试类类名不能直接命名为 ...
- 没事别想不开做Halcon视觉工程师 halcon机器视觉如何学习?
今天我们来听听看来自一个机器视觉工程师的唠叨和吐槽,在这之后,你还想学人工智能,还想学机器视觉?恭喜你,你对人工智能机器视觉是真爱了! 既然自己选择了这条路,那么无论前进路上有多坎坷,跪着也要走完. ...
- Java面向对象16种原则
一 类的设计原则 1 依赖倒置原则-Dependency Inversion Principle (DIP) 2 里氏替换原则-Liskov Substitution Principle (L ...
- php的中文字符
在使用substr截取字符窜的时候出现乱码的问题 一直任认为字符串是2个字节,直到多次才尝试才总算知道问题所在 php的utf-8字符是每个字符3个字节 而gbk字符是每个字节2个字符 单个字母和符号 ...
- 【有容云】PPT | 容器落地之二三事儿
编者注: 本文为10月29日有容云联合创始人兼研发副总裁江松在 Docker Live时代线下系列-广州站中演讲的PPT,本次线下沙龙为有容云倾力打造Docker Live时代系列主题线下沙龙,每月一 ...
- JavaSE(一)Java程序的三个基本规则-组织形式,编译运行,命名规则
一.Java程序的组织形式 Java程序是一种纯粹的面向对象的程序设计语言,因此Java程序必须以类(class)的形式存在,类(class)是Java程序的最小程序单位. J ...
- 初试kafka消息队列中间件一 (只适合初学者哈)
初试kafka消息队列中间件一 今天闲来有点无聊,然后就看了一下关于消息中间件的资料, 简单一点的理解哈,网上都说的太高大上档次了,字面意思都想半天: 也就是用作消息通知,比如你想告诉某某你喜欢他,或 ...
- java-web调用后台下载方法
后台下载指定文件必定会用到流, 无论使用poi还是使用jxl导出excel都需要用到流一种是outputstrean,另一种fileoutputstream第一种:如果想要弹出保存的提示框必须加入下列 ...
- Mybatis获取代理对象
mybatis-config.xml里标签可以放置多个environment,这里可以切换test和develop数据源 databaseIdProvider提供多种数据库,在xml映射文件里选择da ...