mysql数据表的基本操作之表结构操作,字段操作实例分析

作者:随风行云 时间:2024-01-17 18:15:54 

本文实例讲述了mysql数据表的基本操作之表结构操作,字段操作。分享给大家供大家参考,具体如下:

本节介绍:

表结构操作

  • 创建数据表、

  • 查看数据表和查看字段、

  • 修改数据表结构

  • 删除数据表

字段操作

  • 新增字段、

  • 修改字段数据类型、位置或属性、

  • 重命名字段

  • 删除字段

首发时间:2018-02-18  21:31


表结构操作

创建数据表:

  • 语法  :


create table [if not exists] 表名(
字段名字 数据类型,
字段名字 数据类型
)[表选项];
  • 表选项  :

    • 字符集:charset表中存储数据的字符集

    • 校对集:colloate表中用来校对数据的校对集

    • 存储引擎  :engine存储数据的存储引擎

    • 表选项和库选项的区别是,如果不设置表选项就会采用库选项的设置,就好象一个“局部变量”。

  • 使用示例  :


-- 建表之前必须指定数据库,可以使用use来指定后续的操作是基于哪个数据库的 ,也可以使用数据库名作为前缀来指定数据表创建在哪个数据库。
-- 使用数据库名作为前缀来指定数据表创建在哪个数据库。
create table if not exists mydatabase.student(
name varchar(20),
sex varchar(20),
number varchar(20),
age int
)charset utf8;

-- 使用use来指定后续操作基于哪个数据库
use mydatabase;
create table if not exists class(
name varchar(20),
room varchar(20)
)charset utf8;

-- 演示不带表选项的创建表
use mydatabase;
create table if not exists class(
name varchar(20),
room varchar(20)
);
  • 补充说明  :

    • if not exists 是先检查是否存在同名的表,如果存在,则不执行后面的创建语句。 十分建议使用。如果你确定这个表不存在,那么可以不使用。

    • 如果没有指定表选项,将使用默认的,比如mysql默认的存储引擎是innodb。

查看数据表  :

查看数据表可以查看已有数据表、数据表的字段信息

  • 语法  :


-- 查看所有表
show tables;
-- 查看部分表
show tables like '模糊匹配';
-- 查看表的创建语句
show create table 数据表名;
-- 旋转查看结构
show create table 数据表名\G;
-- 查看表结构:查看表中的字段信息:
Desc/desc 表名;
describe 表名;
show columns from 表名;
  • 模糊匹配:

    • _匹配单个字符

    • %匹配多个字符

  • 使用示例  :


show tables;

show tables like 'my%';

show create table student;

show create table student\G;

desc student;
describe student;
show columns from student;

图例:

  1. show create table student;跟show create table sudent\G;

mysql数据表的基本操作之表结构操作,字段操作实例分析

mysql数据表的基本操作之表结构操作,字段操作实例分析

Desc/describe /show columns from 表名;

mysql数据表的基本操作之表结构操作,字段操作实例分析

修改数据表结构  :

修改表只能修改表名和表选项。

  • 语法  :


-- 修改表名:
rename table 老表名 to 新表名;
--修改表选项:
Alter table 表名 表选项 [=] 值;
  • 使用示例  :


rename table student to my_student;
rename table class to my_class;
--
Alter table my_student charset gbk;
Alter table my_collation_bin collate =utf8_bin;

删除数据表  :

  • 语法  :


Drop table 表名1,表名2...;
  • 使用示例  :


drop table demo;
drop table demodata;
  • 补充说明  :

    • 删除不可恢复,删除需谨慎。


字段操作  :

新增字段  :

新增字段是在表存在的基础上新增字段

  • 语法  :


Alter table 表名 add [column] 字段名 数据类型 [列属性] [位置];
  • 使用示例  :


Alter table 表名 add [column] 字段名 数据类型 [列属性] [位置];
Alter table demo add column id int first;
Alter table demo add id int;
Alter table demo add class int after age;
Alter table demo add number int not null after age;
  • 补充说明  :

    • first :表示位于第一列,

    • after 字段名 :代表在某个字段后面;

    • 位置常用语法:

    • 列属性:主键,空值 等;

修改字段  :

修改字段一般都是修改字段数据类型或者字段属性

  • 语法  :


Alter table 表名 modify 字段名 数据类型 [属性] [位置];
  • 使用示例  :


Alter table my_student modify number char(10) after id;
Alter table demo modify number int null ;
--
alter table student modify name varchar(20) not null;

--
alter table student modify name varchar(20) not null primary key;
  • 补充说明  :

    • 字段名和数据类型是必填的,属性和位置是选填的。

    • 如果字段本身带着属性的,那么必须带上原来的,否则会被去除掉;如果需要在原有属性的基础上添加新的属性,则在填入时,那么在带上原有属性的基础上加上新的属性即可

    • mysql数据表的基本操作之表结构操作,字段操作实例分析

重命名字段  :

  • 语法  :


Alter table 表名 change 旧字段 新字段 数据类型 [属性] [位置];
  • 使用示例  :


alter table demo change class room varchar(10);
Alter table my_student change sex gender varchar(10);
  • 补充说明  :

    • 数据类型是必填的,但可以是新的【重名字段可以顺便改数据类型】

    • 改名的同时也能修改字段的数据类型,属性和位置。【如果字段带有属性,重命名字段时可以不带上】mysql数据表的基本操作之表结构操作,字段操作实例分析

删除字段  :

  • 语法  :


Alter table 表名 drop 字段名;
  • 使用示例  :


Alter table my_student drop age;
alter table demo drop room;
  • 补充说明  :

    • 删除需谨慎,删除字段代表着将该字段下的所有数据都将删除。

希望本文所述对大家MySQL数据库计有所帮助。

来源:https://www.cnblogs.com/progor/p/8453351.html

标签:mysql,数据表,表结构,字段
0
投稿

猜你喜欢

  • 三种禁用FileSystemObject组件的方法

    2007-09-23 15:52:00
  • python进阶教程之循环相关函数range、enumerate、zip

    2022-07-24 04:04:37
  • 优化 MySQL 语句的十个建议

    2012-05-08 07:14:36
  • Python的Flask框架中使用Flask-Migrate扩展迁移数据库的教程

    2024-01-19 06:38:45
  • Python Serial串口基本操作(收发数据)

    2022-04-17 09:54:07
  • Python中协程用法代码详解

    2021-01-26 06:33:24
  • SQL Server异常代码处理的深入讲解

    2024-01-22 11:42:58
  • Python基于smtplib协议实现发送邮件

    2021-03-02 07:26:36
  • 用python实现批量重命名文件的代码

    2023-01-02 09:09:20
  • 解决安装mysqlclient的时候出现Microsoft Visual C++ 14.0 is required报错

    2024-01-14 15:48:14
  • 一文带你了解MySQL中触发器的操作

    2024-01-13 13:22:11
  • Django表单外键选项初始化的问题及解决方法

    2022-07-09 04:28:42
  • 如何利用Python获取鼠标的实时位置

    2022-08-11 07:00:33
  • 浅析使用JDBC操作MySQL需要添加Class.forName("com.mysql.jdbc.Driver")

    2024-01-21 23:08:48
  • Django页面数据的缓存与使用的具体方法

    2023-03-29 11:42:44
  • asp.net 使用Silverlight操作ASPNETDB数据库

    2024-01-20 15:50:24
  • win7下MySql 5.7安装配置方法图文教程

    2024-01-20 21:04:12
  • Oracle SecureFile的功能第1/4页

    2009-06-19 18:07:00
  • python中将阿拉伯数字转换成中文的实现代码

    2021-09-30 05:45:25
  • SQL Server在AlwaysOn中使用内存表的“踩坑”记录

    2024-01-26 03:49:10
  • asp之家 网络编程 m.aspxhome.com