前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SQL 精编(1)

SQL 精编(1)

作者头像
franket
发布2021-10-19 19:41:16
4050
发布2021-10-19 19:41:16
举报
文章被收录于专栏:技术杂记技术杂记

前言

SQL 是结构化查询语言 (Structured Query Language) 的简称

SQL是一套访问和处理数据库的标准和规范,事实上不同数据库对于这套规范的实现各有差异,即便同种数据库不同版本实现出来的也不竟相同 ,但不得不说,因为有了这套规范后,对于数据库的操作变得更容易,绝大部分语句可以不用修改就直接跨数据库(这里指DBMS)执行,也为不同数据库管理系统之间导入导出数据提供了一定的可行性

个人感觉 SQL 更像是一种交互规范,或者说是 DBMS 的统一API

这里分享一下工作中会用到的一些操作,不是从基础开始,因为 SQL 基础在网上有很多资料,这里主要分享的是一些实用的小技巧和注意事项,如果实现相同效果有更好的方法,欢迎与我探讨,共同交流进步

Tip: 这篇文章可能会持续更新,因为工作中如果遇到了新的问题,可能会有新的方法,届时就会添加进来,因为这篇的知识很零散并不系统,所以更适合作为字典来查,目前的主要执行环境是 Percona Server 5.6


概要


SQL 语句与分类

  • DQL(Data Query Language) : 数据查询语言,主管数据获取
  • DML(Data Manipulation Language) : 数据操作语言,主管数据变更
  • TPL(Data Transaction Language ) : 事务处理语言,主管事务起止
  • DCL(Data Control Language) : 数据控制语言,主管权限分配
  • DDL(Data Define Language) : 数据定义语言,主管数据结构与定义
  • CCL(Cursor Control Language) : 指针控制语言,主管游标操作

平时用得最多的是 DQL、DML、DDL


alter

代码语言:javascript
复制
alter table chatter_users alter column ip varchar(50) NULL; 
alter table address modify column city char(30);
alter table address modify column city varchar(50);
alter table user_logins  default charset utf8;
ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` ) 
ALTER TABLE `table_name` ADD UNIQUE ( `column` ) 
ALTER TABLE `table_name` ADD INDEX index_name ( `column` ) 
ALTER TABLE `table_name` ADD FULLTEXT ( `column`) 
ALTER TABLE `table_name` ADD INDEX index_name ( `column1`, `column2`, `column3` )
alter table comments convert to character set utf8;
alter table comments default charset utf8;
alter table `Wxxxxx` modify column `CONTENT` varchar(30) character set utf8 not null;
pt-online-schema-change --user=root --password=XXX --host=localhost --lock-wait-time=120 --alter="ADD COLUMN domain_id INT" D=test,t=oss_pvinfo2 --execute
set old_alter_table = 1;
ALTER IGNORE TABLE tableA ADD UNIQUE INDEX idx_col1_u (col1) 

修改表属性、修改列属性,修改默认字符集,添加索引,添加列


replication

代码语言:javascript
复制
CHANGE MASTER TO MASTER_HOST='192.168.1.123', MASTER_USER='repl',MASTER_PASSWORD='xxxx', MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=1;
stop slave;
start slave;
show slave status\G
reset slave all; 

reset slave all 会清除从库的同步复制信息、包括连接信息和二进制文件名、位置, 使用show slave status将不会有输出

本文系转载,前往查看

如有侵权,请联系?cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系?cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 概要
  • SQL 语句与分类
    • alter
      • replication
      相关产品与服务
      数据库
      云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
      http://www.vxiaotou.com