mysql基础——DDL语句

本文详细介绍了MySQL中的数据定义语言(DDL)语句,包括创建、删除、修改数据库和表的操作。通过实例展示了如何使用CREATE、DROP、ALTER等关键字创建数据库、表,并进行字段的增删改查。同时,提到了MySQL在标准SQL上的扩展,如CHANGE、MODIFY、FIRST|AFTER等,以及注意事项和可能存在的兼容性问题。

DDL(Data Definition Languages)语句:数据定义语言,这些语句定义了不同的数据段、数据库、表、列、索引等数据库对象。常用的语句关键字主要包括create、drop、alter等。

创建数据库

create database webshop;

创建表

CREATE TABLE `item` (
  `id` int(20) NOT NULL AUTO_INCREMENT,
  `name` varchar(32) NOT NULL COMMENT '商品名称',
  `price` float(10,1) NOT NULL COMMENT '商品定价',
  `detail` text COMMENT '商品描述',
  `pic` varchar(64) DEFAULT NULL,
  `createtime` datetime NOT NULL COMMENT '生产日期',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

显示数据库

show databases;

在这里插入图片描述

切换数据库

use webshop;
Database changed;//切换成功

显示当前数据库表信息

show tables;

在这里插入图片描述

显示表信息

desc item;

在这里插入图片描述

显示创建表语句

CREATE TABLE `item` (
  `id` int(20) NOT NULL AUTO_INCREMENT,
  `name` varchar(32) NOT NULL COMMENT '商品名称',
  `price` float(10,1) NOT NULL COMMENT '商品定价',
  `detail` text COMMENT '商品描述',
  `pic` varchar(64) DEFAULT NULL,
  `createtime` datetime NOT NULL COMMENT '生产日期',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

修改表的类型

例:修改item表id字段,将int(11) 修改为int(20)。、

mysql> desc item;

在这里插入图片描述

mysql> alter table item modify id int(20);

在这里插入图片描述

增加表的字段

例:在item表中新增加age字段 类型int(3);

mysql> alter table item add column age int(3);

在这里插入图片描述

删除表字段

例:将age字段删除;

mysql> alter table item drop column age;

在这里插入图片描述

字段改名

例:将pic 改名为pics 同时修改类型为varchar(65);

mysql> alter table item change pic pics varchar(65);

在这里插入图片描述
注意:change和modify都可以修改表的定义,不同的是change后面需要写两次列名,不方便。但是change的优点是可以修改列名称,modify则不能

修改字段排列顺序

例:新增age int(3) 在id之后。

mysql> alter table item add age int(3) after id;

在这里插入图片描述

例:修改name字段,将它放在最前。

mysql> alter table item modify name varchar(64) first;

在这里插入图片描述
注意:CHANGE/FIRST|AFTER COLUMN这些关键字都属于MySQL在标准 SQL上的扩展,在其他数据库上不一定适用。

更改表名

例:将表item 修改为item1。

mysql> alter table item rename item1;
mysql> desc item;
ERROR 1146 (42S02): Table 'webshop.item' doesn't exist
mysql> desc item1;

在这里插入图片描述

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值