基本规则 字符组成:标识符可以由字母(a-z、A-Z)、数字(0-9)、下划线(_)和美元符号($)组成。 首字符:标识符的第一个字符必须是字母或下划线,不能是数字。...长度限制 数据库名、表名不得超过30个字符 变量名不得超过29个字符 保留字与特殊字符 保留字:MySQL保留了一些关键字作为内部命令或函数的名称。...避免使用过长或含糊不清的名称。 避免保留字:尽量避免使用MySQL的保留字作为标识符,以减少潜在的冲突和混淆。...因此,在命名时应尽量避免使用保留字,并遵循MySQL的标识符命名规则。 MySQL 中的数据类型 在MySQL中,数据类型用于指定表中列可以存储数据的种类。...数据库名称:数据库名称在 MySQL 服务器上必须是唯一的,并且符合命名规则(例如,不能使用保留字)。 总结 使用 CREATE DATABASE 语句创建数据库。
它们分别用于添加,修改和删除表中的行。也称为动作查询语言。 三:事务处理语言(TPL):跟shell有点类似由多条sql语句组成的整体 它的语句能确保被DML语句影响的表的所有行及时得以更新。...在数据库中创建新表或删除表(CREAT TABLE 或DROP TABLE);为表加入索引等。DDL包括许多与人数据库目录中获得数据有关的保留字。它也是动作查询的一部分。...4:mysql5.7增加了sys 系统数据库,通过这个库可以快速的了解系统的元数据信息 元数据是关于数据信息的数据,如数据库名或表名,列的数据类型,或访问权限等。...的约束> 2) 数据库的名字不能超过64个字符,包含特殊字符的名字或者是全部由数字或保留字组成的名字必须用单引号``包起来。 3) 数据库不能重名。...注:CHANGE 和MODIFY的区别: CHANGE 对列进行重命名和更改列的类型,需给定旧的列名称和新的列名称、当前的类型。
,数据库不能同名;同一个库中,表不能重名;同一个表中,字段不能重名 必须保证你的字段没有和保留字、数据库系统或常用方法冲突。...使用 ALTER TABLE 语句可以实现: 向已有的表中添加列 修改现有表中的列 删除现有表中的列 重命名现有表中的列 修改一个列 重命名一个列 删除一个列 重命名表 删除表...数据和结构都被删除 所有正在运行的相关事务被提交 所有相关索引被删除 清空表 内容拓展 拓展1:阿里巴巴《Java开发手册》之MySQL字段命名 【 强制 】表名、字段名必须使用小写字母或数字...、match、delayed 等,请参考 MySQL 官方保留字。...表删除 操作将把表的定义和表中的数据一起删除,并且MySQL在执行删除操作时,不会有任何的确认信 息提示,因此执行删除操时应当慎重。
首先介绍MySQL中的基础知识,包括一条数据存储的过程、标识符命名规则和MySQL中常用的数据类型。接着,讲解创建和管理数据库的常用方法,包括创建数据库、使用数据库、修改数据库和删除数据库等。...同一个MySQL软件中,数据库不能同名;同一个库中,表不能重名;同一个表中,字段不能重名 必须保证你的字段没有和保留字、数据库系统或常用方法冲突。...2. 3 修改数据库 更改数据库字符集 ALTER DATABASE 数据库名 CHARACTER SET 字符集; #比如:gbk、utf8等 2. 4 删除数据库 方式 1 :删除指定的数据库 DROP...内容拓展 拓展 1 :阿里巴巴《Java开发手册》之MySQL字段命名 【强制】表名、字段名必须使用小写字母或数字,禁止出现数字开头,禁止两个下划线中间只出 现数字。...、delayed 等,请参考 MySQL 官方保留字。
【重学 MySQL】四十九、阿里 MySQL 命名规范及 MySQL8 DDL 的原子化 阿里 MySQL 命名规范 【强制】表名、字段名必须使用小写字母或数字,禁止出现数字开头,禁止两个下划线中间只出现数字...、delayed 等,请参考 MySQL 官方保留字。...gmt_create, gmt_modified 的类型均为 DATETIME 类型,前者现在时表示主动式创建,后者过去分词表示被动式更新 【推荐】表的命名最好是遵循 “业务名称_表的作用”。...这意味着DDL语句不能在另一个事务中执行,不能在事务控制语句(如START TRANSACTION)中执行,或者与同一事务中的其他语句结合使用。...综上所述,遵循阿里MySQL命名规范可以提高数据库的可读性和可维护性,而MySQL8 DDL的原子化特性则确保了DDL操作的一致性和可靠性。
,可用来存储某种特定类型的数据 数据库中每个表都有唯一的一个名字,用来标识自己,表名的唯一性取决于多个因素:如数据库名等结合(相同数据库不能出现名字相同的表,但不同数据库可以使用相同的表名) 表具有一些特性...,其定义了数据在表中如何存储,比如:存储什么类型的数据,数据如何分解,各部分信息如何命名等 描述表的这组信息可以称为“模式”,其用来描述数据库中特定的表以及整个数据库(和其中表的关系) 模式(schema...):关于数据库和表的布局及特性的信息,一般指给予表的一些定义 3、列和数据类型 表由列组成,列中存储着表中某部分的信息 列(column):表中的一个字段;所有表都有由一个或多个列组成的 分解数据:正确的将数据分解为多个列极为重要...;唯一标识表中每行的这个列(或这组列)称为主键 主键用来表示一个特定的行;没有主键,更新或删除表中特定行很困难,因为没有安全的方法保证操作只涉及相关的行 主键并不总是需要,但大多数情况下都应保证每个表具有一个主键...;) 关键字(key word):MySQL语言组成部分的保留字,决不能用关键字命名一个表或列 2、了解数据库和表 数据库、表、列、用户以及权限等信息被存储在数据库和表中,内部表一般不直接访问,可以使用
这样可以确保数据的范围更大,减少存储空间。 正例:表达逻辑删除的字段名 is_deleted,1 表示删除,0 表示未删除。 2....禁用保留字 【强制】 禁用保留字,如 desc、range、match、delayed 等,请参考 MySQL 官方保留字。 5....表的命名规范 【推荐】 表的命名最好是加上“业务名称_表的作用”。 正例:alipay_task / force_project / trade_config 11....冗余字段应遵循: 不是频繁修改的字段。 不是 varchar 超长字段,更不能是 text 字段。...表名和字段名均使用小写字母,没有出现大写字母或不规范的命名。 表名使用单数形式,未使用复数。 主键索引使用 id,并且 id 字段类型为 unsigned bigint,自动增长。
在MySQL中,数据库名、表名、列名(或字段名)在Windows环境下是大小写不敏感的,而在Linux环境下是大小写敏感的。推荐的做法是将数据库名、表名、列名等小写,而将SQL关键字、函数名大写。...名称必须只能包含字母(A-Z, a-z)、数字(0-9)和下划线(_),且不能包含空格或特殊字符。 同一个数据库软件中,数据库名不能重名;同一个库中,表名不能重名;同一个表中,字段名不能重名。...字段名不应与保留字、数据库系统或常用方法冲突,若冲突可使用反引号(`)将字段名括起来。 注释 SQL支持单行注释和多行注释,以提高代码的可读性。...避免使用保留字: 数据库系统保留了一系列的关键字(如SELECT、INSERT等),这些关键字不能用作数据库对象的名称。如果确实需要使用类似保留字的名称,可以使用反引号(`)将其括起来。...具体命名规范 数据库名: 应简洁明了,通常使用项目名或产品名作为数据库名。 避免使用特殊字符和下划线,除非必要。 表名: 应具有描述性,能够反映表中的数据内容。
先说为什么是坑及解决办法 说是坑的原因是:数据库在大小写敏感的配置下创建,如果修改为大小写不敏感后,原来创建的区分大小写的表名就不能访问。...如何避免:所有的库名,表名,字段名使用小写,单词用下划线"_"间隔,所有命名中,不允许使用 反引号,双引号包裹,ODS 层遇到特别骚的,需要提审批。这个规则保你在数据库使用达到 95% 以上的幸福。...第二个句可以在 Databend 中执行,也是两个独立的字段。 到这里 MySQL 不跟了, MySQL 在字段上不区分大小写。MySQL 字段命名也可以用反引号包裹,但这块规则和表名库名不一致。...把下面字段命名及使用中的规则写到部门的数据开发规范里 【强制】库名、表名限制命名长度,建议表名及字段名字符总长度小于等于63。...【强制】对象名(表名、列名、函数名、视图名、序列名、等对象名称)规范,对象名务必只使用小写字母,下划线,数字。不要以数字开头,不要使用保留字。
大家好,又见面了,我是你们的朋友全栈君。 【强制】表达是与否概念的字段,必须使用is_xxx的方式命名,数据类型是unsigned tinyint ( 1表示是,0表示否)。...正例:表达逻辑删除的字段名is_deleted,1 表示删除,0 表示未删除。 【强制】表名、字段名必须使用小写字母或数字,禁止出现数字开头,禁止两个下划线中间只出现数字。...【强制】禁用保留字,如desc、range、match、delayed等,请参考MySQL官方保留字。 【强制】主键索引名为pk_字段名;唯一索引名为uk_字段名;普通索引名则为idx_字段名。...gmt_create, gmt_modified的类型均为date_time类型,前者现在时表示主动创建,后者过去分词表示被动更新。 【推荐】表的命名最好是加上“业务名称_表的作用”。...2) 不是varchar超长字段,更不能是text字段。 正例:商品类目名称使用频率高,字段长度短,名称基本一成不变,可在相关联的表中冗余存储类目名称,避免关联查询。
对于由 foreign key约束引用的表,不能使用 truncate table,而应使用不带 where子句的 DELETE 语句。...42、尽量做到冷热数据分离,减小表的宽度 Mysql限制每个表最多存储4096列,并且每一行数据的大小不能超过65535字节。...43、禁止在表中建立预留字段 预留字段的命名很难做到见名识义; 预留字段无法确认存储的数据类型,所以无法选择合适的类型; 对预留字段类型的修改,会对表进行锁定; 44、禁止在数据库中存储图片...45、建议把BLOB或是TEXT列分离到单独的扩展表中 Mysql内存临时表不支持TEXT、BLOB这样的大数据类型,如果查询中包含这样的数据,在排序等操作时,就不能使用内存临时表,必须使用磁盘临时表进行...46、TEXT或BLOB类型只能使用前缀索引 因为MySQL对索引字段长度是有限制的,所以TEXT类型只能使用前缀索引,并且TEXT列上是不能有默认值的。
大表新增字段: 对于复杂的表结构更改一般需要手动删除过程提出以下步骤: (1) 用新的列布局创建一个新表; (2) 使用 INSERT SELECT 语句(关于这条语句的详细介绍,请参阅第 15课)从旧表复制数据到新表...有必要的话,可以使用转换函数和计算字段; (3) 检验包含所需数据的新表; (4) 重命名旧表(如果确定,可以删除它); (5) 用旧表原来的名字重命名新表; (6) 根据需要,重新创建触发器、存储过程...因为数据库表的更改不能撤销,如果增加了不需要的列可能无关紧要,但是删除某一列之后会导致当前数据库的当前列数据丢失并且无法找回。...如果列是计算字段通常需要重命名。 部分数据库实现的视图只是一个只读列表,不能通过修改视图修改底层数据。 视图不能索引,也不能有关联的触发器或默认值。 与表一样,视图必须唯一命名。...: 对数据库管理功能(创建表、更改或删除已存在的表等)的访问; 对特定数据库或表的访问; 访问的类型(只读、对特定列的访问等); 仅通过视图或存储过程对表进行访问; 创建多层次的安全措施,从而允许多种基于登录的访问和控制
【重学 MySQL】四十七、表的操作技巧——修改、重命名、删除与清空 修改表 在MySQL中,我们经常需要对已存在的表进行修改,以满足不断变化的数据存储需求。...使用 MODIFY COLUMN MODIFY COLUMN 用于更改现有字段的数据类型、约束条件等,但不能更改字段的名称。...在使用这些引擎时,请查阅相关的文档。 复制和分区:如果你的MySQL服务器配置了复制或使用了分区表,重命名表时可能需要额外的注意。...例如,在复制环境中,你需要确保所有相关的从服务器都应用了相应的更改。 通过正确地使用RENAME TABLE语句,你可以安全地重命名MySQL数据库中的表。...无论是修改表结构、重命名表、删除表还是清空表,都可以根据实际需求选择合适的操作方式。同时,务必注意在执行删除或清空操作前备份重要数据,以防止数据丢失。
同一个 MySQL 软件中,数据库不能同名;同一个库中,表不能重名;同一个表中,字段不能重名 必须保证你的字段没有和保留字、数据库系统或常用方法冲突。...# 2.3 修改数据库 更改数据库字符集 ALTER DATABASE 数据库名 CHARACTER SET 字符集; #比如:gbk、utf8等 # 2.4 删除数据库 方式 1:删除指定的数据库...内容拓展 # 拓展 1:阿里巴巴《Java 开发手册》之 MySQL 字段命名 【 强制 】表名、字段名必须使用小写字母或数字,禁止出现数字开头,禁止两个下划线中间只出现数字。...、match、delayed 等,请参考 MySQL 官方保留字。...# 拓展 2:如何理解清空表、删除表等操作需谨慎?! 表删除 操作将把表的定义和表中的数据一起删除,并且 MySQL 在执行删除操作时,不会有任何的确认信息提示,因此执行删除操时应当慎重。
【强制】表达是与否概念的字段,必须使用is_xxx的方式命名,数据类型是unsigned tinyint ( 1表示是,0表示否)。 说明:任何字段如果为非负数,必须是unsigned。...正例:表达逻辑删除的字段名is_deleted,1 表示删除,0 表示未删除。 【强制】表名、字段名必须使用小写字母或数字,禁止出现数字开头,禁止两个下划线中间只出现数字。...【强制】禁用保留字,如desc、range、match、delayed等,请参考MySQL官方保留字。 【强制】主键索引名为pk_字段名;唯一索引名为uk_字段名;普通索引名则为idx_字段名。...gmt_create, gmt_modified的类型均为date_time类型,前者现在时表示主动创建,后者过去分词表示被动更新。 【推荐】表的命名最好是加上“业务名称_表的作用”。...2) 不是varchar超长字段,更不能是text字段。 正例:商品类目名称使用频率高,字段长度短,名称基本一成不变,可在相关联的表中冗余存储类目名称,避免关联查询。
字符串常量 字符串是包含在单引号(')或双引号(")字符中的字节或字符序列。...标识符命名限制 MySQL 中的某些对象,包括数据库,表,索引,列,别名,视图,存储过程,分区,表空间以及其他对象名称都被称为标识符。...U+FFFF 标识符不允许使用 ASCII NUL (U + 0000)和补充字符 (U + 10000或更高) 标识符可以以数字开头,但不能是纯数字 数据库,表,列表不能以空格字符结尾 标识符的引号字符是反引号...在查询的SELECT列表中,可以使用标识符或字符串引用字符指定引用的列别名: mysql> SELECT 1 AS `one`, 2 AS 'two'; 不建议在命名使使用数字+英文+数字格式命名,因为这样可能会造成模糊不清的语意...避免使用保留字,避免因为语意含糊不清引发的问题。 保留字的清单可以在这里轻松查询到。
文章目录 命名规范 合适的字段类型 主键设计要合理 合适的字段长度 优先考虑逻辑删除,而不是物理删除 每个表都需要添加一些通用字段 表的字段不要太多 尽可能使用not null 定义字段 评估哪块要加索引...避免使用MySQL保留字 不要外键关联,一般用代码维护 一般都选择INNODB存储引擎 选择合适的字符集 如果数据库字段是枚举,就在comment注释清楚 时间类型的选择 不建议使用存储过程,触发器...1:N关系的设计 大字段 分库分表 命名规范 数据库表名,字段名,索引名等都要命名规范,可读性高 表名,字段名必须使用小写字母或者数字,禁止使用数字开头,禁止使用拼音,一般还不使用英文缩写 主键索引名为...,不预先分配空间,长度不要超过500 如果存储的值太大,建议字段类型修改为text,同时抽出单独一张表,用主键与之对应 同一表中,所有varchar字段的长度加起来,不能大于65535,如果又这样的需求...索引过多的话,可以通过联合索引的方式来优化,然后的话,索引还有一些规则,如覆盖索引,最左匹配原则等等 避免使用MySQL保留字 如果有MySQL的保留着,可能会使得SQL语句编写,SHELL脚本中变量的转义变得非常复杂
如果一个命名的或默认的模式不存在,InterSystems IRIS将创建模式(和包),并将创建的项分配给该模式。 如果删除模式中的最后一项,InterSystems IRIS将删除该模式(和包)。...因为USER是一个保留字,尝试用USER的模式名(或任何SQL保留字)指定限定名会导致SQLCODE -1错误。...通过更改默认模式名称,可以更改所有包含非限定表、视图或存储过程名称的查询的含义。 强烈建议在安装InterSystems IRIS时建立默认的SQL模式名,以后不要修改。模式名用于生成相应的类包名。...试图指定“USER”或任何其他SQL保留字作为表名或模式名会导致SQLCODE -312错误。 要指定SQL保留字作为表名或模式名,可以指定名称作为带分隔符的标识符。...如果使用带分隔符的标识符指定包含非字母数字字符的表或模式名,InterSystems IRIS将在生成相应的类或包名时删除这些非字母数字字符。
、删除、修改数据库和数据表的结构。...每条命令以 ; 或 \g 或 \G 结束 关键字不能被缩写也不能分行 关于标点符号 必须保证所有的()、单引号、双引号是成对结束的 必须使用英文状态下的半角输入方式 字符串型和日期时间类型的数据可以使用单引号...列的别名,尽量使用双引号(" "),而且不建议省略as SQL大小写规范 MySQL 在 Windows 环境下是大小写不敏感的 MySQL 在 Linux 环境下是大小写敏感的 数据库名、表名...、表的别名、变量名是严格区分大小写的 关键字、函数名、列名(或字段名)、列的别名(字段的别名) 是忽略大小写的。...同一个MySQL软件中,数据库不能同名;同一个库中,表不能重名;同一个表中,字段不能重名,必须保证你的字段没有和保留字、数据库系统或常用方法冲突**。
1.命名规范 数据库表名、字段名、索引名等都需要命名规范,可读性高(一般要求用英文),让别人一看命名,就知道这个字段表示什么意思。...区分度不高的字段,不能加索引,如性别等 索引创建完后,还是要注意避免索引失效的情况,如使用mysql的内置函数,会导致索引失效的 索引过多的话,可以通过联合索引的话方式来优化。...第一范式:对属性的原子性,要求属性具有原子性,不可再分解; 第二范式:对记录的唯一性,要求记录有唯一标识,即实体的唯一性,即不存在部分依赖; 第三方式:对字段的冗余性,要求任何字段不能由其他字段派生出来...避免使用MySQL保留字 如果库名、表名、字段名等属性含有保留字时,SQL语句必须用反引号来引用属性名称,这将使得SQL语句书写、SHELL脚本中变量的转义等变得非常复杂。...什么是存储过程 已预编译为一个可执行过程的一个或多个SQL语句。 什么是触发器 触发器,指一段代码,当触发某个事件时,自动执行这些代码。使用场景: 可以通过数据库中的相关表实现级联更改。
领取专属 10元无门槛券
手把手带您无忧上云