当前位置: 首页 > news >正文

MySql:表的操作

目录

创建表

查看创建表时的信息

查看表的结构描述

删除一张表

修改表


创建表

CREATE TABLE [IF NOT EXISTS] table_name (field1 datatype,field2 datatype,field3 datatype
) character set 字符集 collate 校验规则 engine 存储引擎;
field 表示列名
datatype 表示列的类型
character set 字符集,如果没有指定字符集,则以所在数据库的字符集为准
collate 校验规则,如果没有指定校验规则,则以所在数据库的校验规则为准
engine 存储引擎,常见的有MyIsam、Innodb

        比如创建一张用户表。

        comment是用来描述列名信息的,可以不用加,字符集、校验规则、存储引擎的书写都可以用等号来指定。

create table users (
id int,
name varchar(20) comment '用户名',
password char(32) comment '密码是32位的',
birthday date comment '生日'
) charset=utf8 engine=MyISAM;

        不同的存储引擎,创建表后,对应所在目录生成的文件各有所不同。比如MyIsam引擎所创建的表,会生成三个后缀名不同的文件。

users.frm :表结构
users.MYD :表数据
users.MYI :表索引

查看创建表时的信息

show create table 表名;

查看表的结构描述

desc 表名;

删除一张表

drop table 表名;

修改表

        本文暂时不谈对表的内容做修改,这里对表的修改指的是对表的结构的修改,比如修改表名、修改列名、修改表字段的属性、增加一列、删除一列。

//增加一列
ALTER TABLE tablename ADD (column datatype [DEFAULT expr][,column
datatype]...);
//修改字段的属性
ALTER TABLE tablename MODIfy (column datatype [DEFAULT expr][,column
datatype]...);
//删除一列
ALTER TABLE tablename DROP (column);
  • 举一个对表的内容修改的例子,使用的关键字是insert,比如插入两条记录。 
insert into users values(1,'a','b','1982-01-04'),(2,'b','c','1984-01-
04');
  •  以下的修改都算作对表的结构的修改,属于DDL的SQL语句,比如增加一列,用来表示图片路径,列名为assets,类型为varchar(100)
alter table users add assets varchar(100) comment '图片路径' after
birthday;

        after birthday表示把这一列新增到birthday这一列后面。

  • 修改name的属性,比如把name的长度改为60。
alter table users modify name varchar(60);

        由于这种修改是覆盖式的修改,所以name原来的comment信息也会随之消失。

  • 删除一列

        删除password这一列。

alter table users drop password;
  • 修改表名,当前表名为users,修改表名为UserTable,其中to可以省略
alter table users rename to UserTable;
  • 修改列名,比如修改name的列名为aaa
alter table UserTable change name aaa varchar(60);//类型要跟在后面

        以上对表的操作,对表的属性、结构的操作,并为影响表的内容,这些SQL语句都属于DDL类的SQL语句,而Insert、delete、select这些SQL语句是影响表的内容,属于DML类的SQL语句。

http://www.lryc.cn/news/500210.html

相关文章:

  • LVGL9 开关控件 (lv_switch) 使用指南
  • fastadmin 登录退出忽略中间提示页面
  • 游戏引擎学习第36天
  • 准确率99.9%的离线IP地址定位库 ip2region - python 示例
  • wordpress网站使用Linux宝塔面板和SQL命令行导入导出超过50M限制的数据库
  • 开发基础(3):开发应用沉浸式效果 组件安全区方案
  • Python中的数据可视化实战
  • 计算机毕设-基于springboot的甜品店管理系统的设计与实现(附源码+lw+ppt+开题报告)
  • SpringMVC纯注解快速开发
  • 【JAVA】Java高级:多数据源管理与Sharding:在Spring Boot应用中实现多数据源的管理
  • 汽车网络安全 -- IDPS如何帮助OEM保证车辆全生命周期的信息安全
  • 黑马点评项目测试总结
  • 【Selenium】基于 WebDriverWait 爬取带有懒加载的静态页面
  • 【docker】docker compose 和 docker swarm
  • Javaweb 前端 ajax
  • 【蓝桥杯每日一题】重新排序
  • 《深入浅出HTTPS》读书笔记(16):消息验证码算法分类
  • 如何使用Apache HttpClient来执行GET、POST、PUT和DELETE请求
  • 数据结构-希尔排序
  • Spire.doc 合并word,复制word
  • 【Spring项目】表白墙,留言板项目的实现
  • 分布式事务-nacos/seata在windows环境下部署及开发
  • 分布式微服务架构下的密码安全性方案
  • 基于pytorch的深度学习基础4——损失函数和优化器
  • 网络安全信息收集(总结)更新
  • web斗地主游戏实现指北
  • SpringMVC其他扩展
  • 【Linux】网络服务
  • 工作:SolidWorks从3D文件导出2D的DWG或DXF类型文件方法
  • IDL学习笔记(五)MODIS数据(Grid)