简单知晓MySQL的基础语句
发布时间:2023-09-28 15:32:49 所属栏目:MySql教程 来源:
导读:下面跟着笔者一起来简单了解MySQL的基础语句,相信大家看完肯定会受益匪浅,文字在精不在多,希望MySQL的基础语句这篇短内容是你想要的。
1.创建数据库
创建数据库的官方标准语法为:
CREATE {DATABASE
1.创建数据库
创建数据库的官方标准语法为:
CREATE {DATABASE
下面跟着笔者一起来简单了解MySQL的基础语句,相信大家看完肯定会受益匪浅,文字在精不在多,希望MySQL的基础语句这篇短内容是你想要的。 1.创建数据库 创建数据库的官方标准语法为: CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name [create_specification] ... create_specification: [DEFAULT] CHARACTER SET [=] charset_name | [DEFAULT] COLLATE [=] collation_name 其中{}中的内容为多选一,[]中的内容可带可不带,后续若有此类符号也是同等意思。 一般工作中常常这样创建数据库: CREATE DATABASE IF NOT EXISTS `test_db` DEFAULT CHARACTER SET utf8; 想要查看数据库的创建语句,可以这样查看: mysql> show create database test_db; +----------+------------------------------------------------------------------+ | Database | Create Database | +----------+------------------------------------------------------------------+ | test_db | CREATE DATABASE `test_db` /*!40100 DEFAULT CHARACTER SET utf8 */ | +----------+------------------------------------------------------------------+ 2.修改数据库 一般情况下很少去修改数据库,官方给出的标准语法为: ALTER {DATABASE | SCHEMA} [db_name] alter_specification ... alter_specification: [DEFAULT] CHARACTER SET [=] charset_name | [DEFAULT] COLLATE [=] collation_name 特殊情况下我们可能会修改数据库的字符集,这时候我们可以这样书写: ALTER DATABASE `test_db` DEFAULT CHARACTER SET utf8mb4; 3.删除数据库 删除数据库可要小心啊!千万不要删库跑路哦。此类需求一般极少,不过我们也要会呀,连库都不会删岂不是很没面子~~ 还是看下官方文档语法: DROP {DATABASE | SCHEMA} [IF EXISTS] db_name 相比创建和更改来讲,删除就显得简单粗暴很多。所有我们操作的时候要格外小心,删除前建议做下备份。<br />比如我们要删除test_db库,我们可以这样写: DROP DATABASE IF EXISTS `test_db`; 删除之后我们再执行show database就看不到test_db库了。 4.创建表 创建数据表是我们经常遇到的语句了,官方给出的参考语法比较长,这里先列出下,为了不占用太多空间,这里用代码图片代替。 对于我们学习及工作常用的选项归纳如下: CREATE TABLE <表名> ([表定义选项])[表选项][分区选项]; [表定义选项]的格式为: <列名1> <类型1> [,…] <列名n> <类型n> 对于临时表的创建及分区表的创建选项,日常学习及工作中用的不多,这里就不多介绍,下面列举出一个基础的创建表的语句: CREATE TABLE `user_info` ( `id` int unsigned NOT NULL AUTO_INCREMENT COMMENT '自增主键', `user_id` bigint(11) NOT NULL COMMENT '用户id', `username` varchar(45) NOT NULL COMMENT '真实姓名', `email` varchar(30) NOT NULL COMMENT '用户邮箱', `nickname` varchar(45) NOT NULL COMMENT '昵称', `birthday` date NOT NULL COMMENT '生日', `sex` tinyint(4) DEFAULT '0' COMMENT '性别', `short_introduce` varchar(150) DEFAULT NULL COMMENT '一句话介绍自己,最多50个汉字', `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`), UNIQUE KEY `uniq_user_id` (`user_id`), KEY `idx_username`(`username`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户信息表' 5.修改表 修改表可选选项同样是很多的,参考上面创建表的选项,这里就不一一列出了。 alter table用于更改表的结构,例如,可以添加或删除列,创建或删除索引,更改现有列的类型,或重命名列或表本身。还可以更改表的存储引擎或表注释。下面介绍下几个常用的修改表的示例: 修改表选项 # 修改表的存储引擎 ALTER TABLE t1 ENGINE = InnoDB; # 修改表的自增值 ALTER TABLE t1 AUTO_INCREMENT = 13; # 修改表的字符集 ALTER TABLE t1 CHARACTER SET = utf8; # 添加(或更改)表注释: ALTER TABLE t1 COMMENT = 'New table comment'; # 修改表名称 ALTER TABLE t1 RENAME t2; 字段(列)操作 # 增加字段 # ALTER TABLE <表名> ADD COLUMN <新字段名> <数据类型> [约束条件] [FIRST|AFTER 已存在的字段名] ALTER TABLE t1 ADD COLUMN col1 INT FIRST; # 删除字段 ALTER TABLE t1 DROP COLUMN col1; # 修改字段类型 ALTER TABLE t1 MODIFY col1 VARCHAR(30); # 更改字段名称 ALTER TABLE t1 CHANGE col1 col2 VARCHAR(30); 索引操作 # 添加索引 alter table t1 add index index_name (column_list) ; alter table t1 add unique (column_list) ; alter table t1 add primary key (column_list) ; # 删除索引 alter table t1 drop index index_name ; alter table t1 drop primary key ; 6.截断表 截断表即truncate table,也可理解为清空表,从逻辑上讲,TRUNCATE TABLE类似于DELETE一个表的所有行,但它绕过了删除数据的DML方法,因此它不能回滚。<br />truncate语法很简单,官方文档示例: TRUNCATE [TABLE] tbl_name 7.删除表 删除表官方给出的参考语法为: DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ... [RESTRICT | CASCADE] 如果我们不需要这个表,可以考虑使用该语法,但是它将删除表定义和所有表数据,是不可回滚的操作,一定要小心执行哦。 (编辑:聊城站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐