mysql数据库表的基本操作
表的操作
表示数据库存储数据的基本单位,由若干个字段组成,主要用来存储数据记录,表的操作是增删改查,这是最基本的操作,也是最重要的操作
创建表
语法create table 表名
(字段1 类型[(宽度) 约束条件],
字段n 类型[(宽度) 约束条件]
);
在同一张表中字段名不能相同
宽度和约束条件是可选的
字段名和类型是必须的
实例:
Use school
Create table student
(name char(10),
Sex char(8),
Age int(3),
Password varchar(50)
);
查看表结构
Describe 表名;
Desc 表名;
Show create table 表名; //查看表详细结构
表完整性约束为了保障数据的完整性一致性和准确性
关键字primkary key 主键, 唯一标识的一个记录
Foreign key 外键 ,做关联
No null 非空
Unique key 唯一约束,这本身就是一个索引
Default 默认值
Auto_increment 自增长
实例:
Use school
Create table student
(name char(10) not null,
Sex enum (‘male’,’female’), default ‘male’ not null
Age int unsigned not null default 18, //unsigned修饰值必须为正值
Hobby set (‘music’,’book’,’disc’) default ‘book,disc’
);
设置唯一约束实例:unique
Create table departtment(
Dept_id int,
Dept_name varchar(30) unique,
Comment varchar(50)
);
设置主键约束实例:primary key非常重要,唯一标识符,这本身就是一条索引
使用单列做主键
Create table departtment(
Dept_id int primary key,
Dept_name varchar(30) ,
Comment varchar(50)
);
使用多列做主键,也就是复合主键,也就是说这两个共同一起是不能有相同的数据的
Create table departtment(
Dept_id int ,
Dept_name varchar(30),
Comment varchar(50),
Constraint pk_id_name primary key (dept_id,dept_name)
);
设置自增长auto_increment 自增长通常都是配合主键共同使用的,而且这个字段必须是整数类型才行
Create table student(
Dept_id int primary auto_increment,
Dept_name varchar(30),
Comment varchar(50)
);
设置外键约束foreign key主要做表的关联,这里就涉及到父子表的概念,外键必须要存储引擎来支撑的,所以必须要确保存储引擎是innodb才行
实例
父表
Create table empolyees(
Name varchar(20) not null,
Mail varchar (20),
Primary key (name)
)engine=innodb;
子表
Create table pryroll(
Id int(5) not null,
Name varchar(20) not null,
Payroll float (10,2) no null,
Primary key (id),
Constraint fk_name foreign key (name) references employees (name)
on udate cascade
on delete cascade //字表中的name跟employees 表的name字段关联,并且同步删除更新,父表中有那个人,子表中才能够插入,不然是不行的
)engine=innodb;
修改表
修改表名
Alter table 旧表名 rename 新表名
实例:
Alter table stu rename student; //将stu表改名为student
Alter table student engine=myisam; //修改student表的存储引擎为myisam
增加字段
Alter table 表名
Add字段名 数据类型 [完整性约束条件.....],
Add字段名 数据类型 [完整性约束条件.....];
默认情况下新增加的字段是放在所有字段后面的
实例:
Alter table student
Add name varchar(30) not null,
Add age int not null;
Alter table 表名
Add字段名 数据类型 [完整性约束条件.....] first;
实例:
Add stu_num varchar(30) not null first;
Alter table 表名
Add字段名 数据类型 [完整性约束条件.....] after 字段名;
实例:
Add passord varchar(30) not null after name;
删除字段
Alter table 表名 drop 字段名;
实例:
Alter table student drop stu_num;
修改字段
Alter table 表名 modify 字段名 数据类型 [完整性约束条件......]; //只能针对旧有的字段操作只能改名
Alter table 表名 change 旧字段名 新字段名 旧数据类型 [完整性约束条件......];
一般用这个
实例:
Alter table student change name stu_name varchar(30);
Alter table 表名 change 旧字段名 新字段名 新数据类型 [完整性约束条件......];
实例:
Alter table student change stu_name name varchar(50) not null;
删除表
Drop table 表名;
实例:
Drop table student
转载于:https://blog.51cto.com/983865387/1917416
mysql数据库表的基本操作相关推荐
- mysql 表名批量转大写_(转)mysql数据库表名批量修改大小写
由于不用服务器对mysql的表名的大小写敏感要求不一致,经常在出现线上的数据库down到了本地不能运行的情况,贴出一段代码用来批量修改数据库表名大小写. DELIMITER // DROP PROCE ...
- unicode表_Python数据库操作 Mysql数据库表引擎与字符集#学习猿地
# Mysql数据库表引擎与字符集 ![](./imgs/752951346A5F4E7EBDE362FA97107707.png) ### 1.服务器处理客户端请求 其实不论客户端进程和服务器进程是 ...
- 程序员面试之MySQL数据库表的设计
如果要选择一门程序员必备的技能,那答案无疑是数据库,而MySQL是首选.很多企业在面试过程中会提问MySQL数据库表设计要注意什么,接下来小千就给大家讲解一下. MySQL相较于MSSQL SERVE ...
- 一个漂亮的输出MySql数据库表结构的PHP页面
经常为了方便和直观,我们会首先直接在数据库中设计出表,但是接下来又要将表的结构和设计编写在设计文档中,以便编码的时候可以直观的查询,一旦数据库表非常多,字段非常多的时候,这无疑是件非常郁闷的工作. 这 ...
- 查看MySQL数据库表的命令介绍
如果需要查看MySQL数据库中都有哪些MySQL数据库表,应该如何实现呢?下面就为您介绍查看MySQL数据库表的命令,供您参考. 进入MySQL Command line client下 查看当前使用 ...
- php修改mysql数据库中的表格,如何修改mysql数据库表?
修改mysql数据库表的方法:使用"ALTER TABLE"语句,可以改变原有表的结构,例如增加字段或删减字段.修改原有字段数据类型.重新命名字段或表.修改表字符集等:语法&quo ...
- 7.Mysql数据库表引擎与字符集
7.Mysql数据库表引擎与字符集 1.服务器处理客户端请求 其实不论客户端进程和服务器进程是采用哪种方式进行通信,最后实现的效果都是:客户端进程向服务器进程发送 一段文本(MySQL语句),服务器进 ...
- 织梦数据库改mysql前缀_织梦快速批量修改MYSQL数据库表前缀与表名实例操作
这篇文章主要为大家详细介绍了织梦快速批量修改MYSQL数据库表前缀与表名实例操作,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,有需要的朋友可以收藏方便以后借鉴. 我们在安装织梦系统的时候,有一次 ...
- 导出远程mysql数据库中的表_shell脚本实现导出远程mysql数据库表数据至本地
bin/main.sh脚本内容 #!/bin/bash #作用:用于同步远程mysql数据库表数据至本地 #作者:丁艺博 source /etc/profile source ~/.bash_prof ...
最新文章
- centos创建禁止登录用户
- linux epoll模型
- Java - String源码解析及常见面试问题
- 开发函数计算的正确姿势——使用交互模式安装依赖
- xbox one 越狱_如何在Xbox One上播放视频和音乐文件
- python合并csv文件_Python学习——pandas 合并csv文件
- intel编译器_Intel编译器编译并行版lammps
- Bailian2675 计算书费【求和】
- photo player 显示 ☞ 列表选中项的处理
- 如何利用Python分离文件中的英文和中文?
- 【学习笔记】维基百科中文数据处理(NLP)
- 阿里物联网平台产品、设备创建
- 滴水逆向3期笔记与作业——01汇编
- 西瓜书课后题——第七章(贝叶斯分类器)
- 关于支持电脑登录选项设置
- 昭阳K2450笔记本安装Linux,可能是最难拆的笔记本:lenovo 联想 昭阳K2450 升级固态硬盘的艰难历程...
- 微积分:如何理解方向导数与梯度?
- 灵魂的吞噬 评论google图书馆
- 西安的房价为什么猛涨
- python照片过人脸_python openCV实现摄像头获取人脸图片