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;

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

被折叠的 条评论
为什么被折叠?



