mysql常用语句-更新中

本文详细介绍SQL语言中的DDL、DML及DCL语句用法,包括表和索引的创建与修改、数据的插入更新与删除,以及权限控制等关键操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.DDL(Data Definition Language 数据定义语言)

1.1 Alter

1.官方文档

1.1.1索引相关语句
1.1.1.1创建索引
-- 建表之后创建主键
---- alter table 【表名】 add constraint 【主键名】 primary key (【字段】);
alter table t_test add constraint t_test_ID_PK primary key (ID);
---- 创建完主键后给主键增加自增
alter table table_name modify id int auto_increment primary key
-- 创建普通索引
---- create index 【索引名】 on 【表名】(【字段】,[【字段】]);
create index t_test_ID_NAME_index on new_t_ykt_transactions(`ID`, `NAME`);
-- UNIQUE(唯一索引)
ALTER TABLE `table_name` ADD UNIQUE unique_name (`column`)
-- 联合唯一索引
alter table table_name add unique index index_name (aa,bb);
-- 插入索引时以前的数据有重复,使用ignore关键字,会删除重复的数据
alter ignore table table_name add unique index(aa,bb);
-- INDEX(普通联合索引)
ALTER TABLE `table_name` ADD INDEX index_name ( `column1`, `column2`, `column3` )
1.1.1.2删除索引
-- 删除主键
ALTER  TABLE  TABLE_NAME  DROP  PRIMARY  KEY;
-- 删除索引
DROP INDEX index_name ON tbl_name;

索引参考地址
1.MySQL之添加联合唯一索引

1.2表修改相关

1.2.1字段添加修改删除
-- 在某个字段的前面添加字段
alter table table_name ADD	column_name varchar(255) comment '测试' AFTER column_name
-- 修改某个字段的属性注释等
ALTER TABLE table_name MODIFY COLUMN column_name varchar(32) DEFAULT '0' COMMENT '添加注释的内容';
-- 修改字段明湖曾
 alter table table_name rename column old_columnname to new_name;
1.2.2表修改
-- 修改表的注释
alter table table_name comment '表的注释';

2.DML(Data Manipulation Language 数据操控语言)

2.1insert相关语句

-- 插入所有的值
INSERT INTO 表名称 VALUES (1,2,....)
-- 插入指定列的值
INSERT INTO table_name (1,2,...) VALUES (1,2,....)
-- 查询数据并插入表——如果接受数据导入的表已经存在
insert into target_table_name select * from source_table_name
-- 查询数据并插入表——如果接受数据导入的表已经存在
select * into target_table_name from source_table_name
-- mysql特有语法,添加或更新
Insert intoON DUPLICATE KEY UPDATE

2.2update相关语句

-- 通用模板
UPDATE 表名称 SET 列名称 = 新值[,列名称 = 新值] WHERE 列名称 = 某值
-- 将一张表的数据更新至另外一张表中
UPDATE table_nameA a INNER JOIN table_nameB b SET a.列名称 = b.列名称[,a.列名称 = b.列名称] WHERE a.列名称=b.列名称;

2.3删除相关语句

  • 1.删除数据而不删除表结构
-- 使用truncate快速删除,这个表和索引所占用的空间会恢复到初始大小
truncate table table_name;
-- delete:操作不会减少表或索引所占用的空间。与事务有关,且可以带where语句
delete table table_name where 列名称 = 某值;
  • 2.删除表
-- 使用效率与速度drop>truncate>delete
DROP TABLE IF EXISTS table_name;
  • 3.参考地址

1.drop、truncate和delete的区别

2.4 select相关语句

2.4.1获得用户排名
SELECT * FROM (SELECT uid,(@rowNum:=@rowNum+1) AS rowNo
FROM table_name,(SELECT(@rowNum:=0)) b ORDERBY score DESC) c
WHERE uid=1;

3.DCL(Data Control Language 数据控制语句)

参考地址

1.w3school-SQL 教程
2.DDL/DML/DCL区别概述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值