Mysql--操作数据库和表的命令
作者:互联网
1、操作数据库的命令
(1)创建数据库
CREATE DATABASE [IF NOT EXISTS] westos;
(2)删除数据库
DROP DATABASE [IF EXISTS] hello;
(3)使用数据库
USE school;
(4)查看所有的数据库
SHOW DATABASES;
(5)查看创建数据库的语句(逆向)
SHOW CREATE DATABASE school;
结果为:CREATE DATABASE `school` /*!40100 DEFAULT CHARACTER SET utf8 */
2、操作数据库中表的命令
(1)SQL命令创建数据库的表
错误的创建表的方式:CREATE TABLE student;(最起码得有一列)
正确的建表方式如下:
-- 目标:创建一个school数据库
-- 创建学生表(列,字段) 使用SQL创建
-- 学号int 登录密码 varchar(20) 姓名,性别varchar(2),出生日期(datetime),家庭住址,email
-- 注意点,使用英文(),表的名字和字段 尽量使用 ``括起来
-- AUTO_INCREMENT
-- 字符串使用 单引号括起来!
-- 所有的语句后面加逗号(英文的),最后一个不用加
-- PRIMARY KEY 主键,一般一个表只有一个唯一的主键
create table if not exists `student`(
`id` int(4) not null auto_increment COMMENT '学号',
`name` varchar(20) not null default '匿名' comment '姓名',
`pwd` varchar(20) not null default '123456' comment '密码',
`sex` varchar(2) not null default '女' comment '性别',
`birthday` datetime default null comment '出生日期',
`address` varchar(100) default null comment '家庭住址',
`email` varchar(50) default null comment '邮箱',
primary key(`id`)
)engine = InnoDB default charset=utf8
格式:
create table [if not exists] `表名`(
`字段名` 列类型 [属性] [索引] [注释],
`字段名` 列类型 [属性] [索引] [注释],
......
`字段名` 列类型 [属性] [索引] [注释]
)[表类型] [字符集设置] [注释]
(2)删除表
DROP TABLE [IF EXISTS] student;
(3)查看student数据表的定义语句(逆向)
SHOW CREATE TABLE student;
结果为:
CREATE TABLE `student` (
`id` int(4) NOT NULL AUTO_INCREMENT COMMENT '学号',
`name` varchar(20) NOT NULL DEFAULT '匿名' COMMENT '姓名',
`pwd` varchar(20) NOT NULL DEFAULT '123456' COMMENT '密码',
`sex` varchar(2) NOT NULL DEFAULT '女' COMMENT '性别',
`birthday` datetime DEFAULT NULL COMMENT '出生日期',
`address` varchar(100) DEFAULT NULL COMMENT '家庭住址',
`email` varchar(50) DEFAULT NULL COMMENT '邮箱',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
通过上述命令,逆向得到的SQL命令脚本内容 ,和自己手动写的创建表的内容一致!!!
(4)查看表的具体结构
DESC student;
(5)修改表的字段、类型及约束
注意:一个表能够修改的地方有哪些:字段名、类型、属性、添加一个字段、删除一个字段
-- 修改表名:ALTER TABLE 旧表名 RENAME AS 新表名
ALTER TABLE teacher RENAME AS te;
-- 增加一个字段:ALTER TABLE 表名 ADD 字段名 列属性
ALTER TABLE te ADD age INT(11);
-- 修改表的修改字段名,类型,约束!
-- 修改字段类型和约束:ALTER TABLE 表名 MODIFY 字段名 列属性[]
ALTER TABLE te MODIFY age VARCHAR(11);
-- 修改字段名,类型及约束:ALTER TABLE 表名 CHANGE 旧表名 新表名 列属性[]
ALTER TABLE te CHANGE age age1 INT(1);
-- 删除一个字段:ALTER TABLE 表名 DROP 要删除的字段名
ALTER TABLE te DROP age1;
-- change:可以用来修改字段名,可以修改类型和约束!
-- modify:不可以用来修改字段名,可以修改类型和约束!
若存在错误,请指正,thanks!
标签:COMMENT,varchar,--,和表,Mysql,TABLE,ALTER,字段名 来源: https://blog.csdn.net/King_wq_2020/article/details/118070775