MySQL常用操作代码模板:增删改查与事务处理
需积分: 9 55 浏览量
更新于2024-09-12
收藏 3KB TXT 举报
"MySQL数据库操作常用命令"
在MySQL数据库管理中,熟练掌握基本的增、删、改、查(CRUD)操作是至关重要的。以下是一些常用的SQL语句,对新手来说是很好的学习模板:
1. **重命名表**:
`ALTER TABLE `<表名>` RENAME `<新表名>`;`
这个命令用于更改现有表的名字。
2. **添加列**:
`ALTER TABLE `<表名>` ADD `<新列名>` <数据类型>;`
使用这个语句可以在已有表中增加新的列。
3. **修改列**:
`ALTER TABLE `<表名>` CHANGE `<旧列名>` `<新列名>` <数据类型>;`
这个命令用于改变列的名称或数据类型。
4. **删除列**:
`ALTER TABLE `<表名>` DROP COLUMN `<列名>;`
用于从表中移除不再需要的列。
5. **删除并重新设置主键**:
`ALTER TABLE `<表名>` DROP PRIMARY KEY, ADD PRIMARY KEY (<主键列名>, <另一个主键列名>);`
当需要改变主键或主键由多个列组成时,可以使用这个命令。
6. **修改列属性**:
`ALTER TABLE `<表名>` MODIFY `<列名>` <数据类型>;`
修改列的数据类型或其他属性,但不改变列名。
7. **添加主键约束**:
`ALTER TABLE `<表名>` ADD CONSTRAINT PRIMARY KEY (<主键列名>);`
为没有主键的表添加主键约束。
8. **添加外键约束**:
`ALTER TABLE `<表名>` ADD CONSTRAINT fk_<外键名> FOREIGN KEY (<外键列名>) REFERENCES `<参照表名>` (<参照列名>);`
定义一个外键,确保数据的参照完整性。
9. **插入数据**:
`INSERT INTO `<表名>` (<列名1>, <列名2>, ...) VALUES (<值1>, <值2>, ...);`
向表中插入一条新的记录。
10. **批量插入数据**:
`INSERT INTO `<表名>` (<列名1>, <列名2>, ...) VALUES (<值1>, <值2>, ...), (<值1>, <值2>, ...);`
可以一次性插入多条记录。
11. **更新数据**:
`UPDATE `<表名>` SET <列名1>=<值1>, <列名2>=<值2>... WHERE <条件>;`
更新满足特定条件的行。
12. **删除数据**:
`DELETE FROM `<表名>` WHERE <条件>;`
删除满足特定条件的行。`TRUNCATE TABLE `<表名>`;`则会清空整个表,但保留表结构。
13. **分组查询**:
`SELECT <列1>, <列2>, ... FROM `<表名>` WHERE <条件> GROUP BY <分组列> HAVING <分组条件> ORDER BY <排序列> DESC LIMIT <限制行数>;`
这个查询可以用来按指定列进行分组,应用聚合函数(如AVG, COUNT, MAX, MIN, SUM)并进行排序和限制结果数量。
14. **字符串函数**:
- `CONCAT(str1, str2, str3, ...)`:将多个字符串连接成一个。
- `INSERT(str, pos, len, newstr)`:在字符串的指定位置插入新的子串。
- `LOWER(str)`:将字符串转换为小写。
- `UPPER(str)`:将字符串转换为大写。
- `SUBSTRING(str, num, len)`:从字符串中提取指定长度的子串。
15. **日期和时间函数**:
- `CURDATE()`:获取当前日期。
- `CURTIME()`:获取当前时间。
- `NOW()`:获取当前日期和时间。
- `WEEK(date)`:返回给定日期是一年中的第几周。
- `YEAR(date)`:从日期中提取年份。
- `HOUR(time)`:从时间中提取小时。
- `MINUTE(time)`:从时间中提取分钟。
- `DATEDIFF(date1, date2)`:计算两个日期之间的天数差。
- `ADDDATE(date, n)`:向日期添加指定的天数。
16. **数学函数**:
- `CEIL(number)`:向上取整,例如2.3会被转换为3。
- `FLOOR(number)`:向下取整,例如2.3会被转换为2。
- `RAND()`:生成0到1之间的一个随机数。
17. **事务处理**:
- `BEGIN`:开始一个新的事务。
- `START TRANSACTION`:同上。
- `COMMIT`:提交事务,保存所有更改。
- `ROLLBACK`:回滚事务,撤销所有更改。
- `SET AUTOCOMMIT = 1/0;`:设置自动提交模式,1为开启,0为关闭。
18. **创建视图**:
`CREATE VIEW <视图名> AS (SELECT <列1>, <列2>, ... FROM <表名> WHERE <条件>);`
视图是从一个或多个表中创建的虚拟表,可以用来简化复杂的查询。
以上就是MySQL数据库中的一些基础操作,它们构成了数据库管理的基础。熟练掌握这些命令,将有助于你更高效地管理和操作数据库。
2013-04-07 上传
2018-12-12 上传
2020-12-15 上传
2023-08-04 上传
2023-07-28 上传
2023-06-08 上传
2023-05-23 上传
2023-05-05 上传
2023-06-02 上传
weixin_43631863
- 粉丝: 0
- 资源: 1
最新资源
- ***+SQL三层架构体育赛事网站毕设源码
- 深入探索AzerothCore的WoTLK版本开发
- Jupyter中实现机器学习基础算法的教程
- 单变量LSTM时序预测Matlab程序及参数调优指南
- 俄G大神修改版inet下载管理器6.36.7功能详解
- 深入探索Scratch编程世界及其应用
- Aria2下载器1.37.0版本发布,支持aarch64架构
- 打造互动性洗车业务网站-HTML5源码深度解析
- 基于zxing的二维码扫描与生成树形结构示例
- 掌握TensorFlow实现CNN图像识别技术
- 苏黎世理工自主无人机系统开源项目解析
- Linux Elasticsearch 8.3.1 正式发布
- 高效销售采购库管统计软件全新发布
- 响应式网页设计:膳食营养指南HTML源码
- 心心相印婚礼主题响应式网页源码 - 构建专业前端体验
- 期末复习指南:数据结构关键操作详解