数据定义语句

MySQL 8.0支持原子数据定义语言(DDL)语句。此功能称为原子DDL。原子DDL语句将数据字典更新,存储引擎操作和与DDL操作相关联的二进制日志写入操作组合到单个原子事务中。即使事务在操作期间停止,事务也可以提交,并在数据字典,存储引擎和二进制日志中保留适用的更改,或者回滚。通过在MySQL

ALTER {DATABASE|SCHEMA} [db_name] alter_specification ...alter_specification: [DEFAULT] CHARACTERSET [=] charset_name | [DEFAULT] COLLATE [=] collatio

ALTER [DEFINER= user] EVENT event_name [ONSCHEDULE schedule] [ONCOMPLETION [NOT] PRESERVE] [RENAMETO new_event_name] [ENABLE|DISABLE|DISABLEONSLAVE] [

ALTERFUNCTION func_name [characteristic ...]characteristic: COMMENT 'string' |LANGUAGESQL| { CONTAINSSQL|NOSQL|READSSQLDATA|MODIFIESSQLDATA } |SQLSECU

适用于MySQL服务器实例的操作

ALTERLOGFILEGROUP logfile_group ADDUNDOFILE 'file_name' [INITIAL_SIZE [=] size] [WAIT] ENGINE [=] engine_name该语句将UNDO名为“file_name'的文件添加到现有的日志文件组中logfi

ALTERPROCEDURE proc_name [characteristic ...]characteristic: COMMENT 'string' |LANGUAGESQL| { CONTAINSSQL|NOSQL|READSSQLDATA|MODIFIESSQLDATA } |SQLSEC

ALTERSERVER server_name OPTIONS (option [, option] ...)更改的服务器信息server_name,调整CREATE SERVER语句中允许的任何选项。mysql.servers表中的相应字段会相应更新。此语句需要SUPER特权。例如,要更新USER

ALTERTABLE tbl_name [alter_specification [, alter_specification] ...] [partition_options]alter_specification: table_options |ADD [COLUMN] col_name col

与分区相关的子句ALTER TABLE可与分区表一起使用,以进行重新分区,添加,删除,丢弃,导入,合并和拆分分区,以及执行分区维护。只需在分区表上使用带有partition_options子句的子句,即可ALTER TABLE根据定义的分区方案对表进行重新分区partition_options。这一

ALTER TABLE允许生成的列操作是ADD,MODIFY,和CHANGE。可以添加生成的列。CREATETABLE t1 (c1 INT);ALTERTABLE t1 ADDCOLUMN c2 INT GENERATEDALWAYSAS (c1 + 1) STORED;可以修改生成的列的数据类型

首先t1创建一个表,如下所示:CREATETABLE t1 (a INTEGER, b CHAR(10));要将表从重命名t1为t2:ALTERTABLE t1 RENAME t2;若要更改列a从INTEGER给TINYINT NOT NULL(名字一样),并更改列b从CHAR(10)到CHAR(2

ALTER [UNDO] TABLESPACE tablespace_name NDBonly: {ADD|DROP} DATAFILE 'file_name' [INITIAL_SIZE [=] size] [WAIT] InnoDB andNDB: [RENAMETO tablespace_na

ALTER [ALGORITHM= {UNDEFINED|MERGE|TEMPTABLE}] [DEFINER= user] [SQLSECURITY { DEFINER|INVOKER }] VIEW view_name [(column_list)] AS select_statement [W

CREATE {DATABASE|SCHEMA} [IFNOTEXISTS] db_name [create_specification] ...create_specification: [DEFAULT] CHARACTERSET [=] charset_name | [DEFAULT] COL

CREATE [DEFINER= user] EVENT [IFNOTEXISTS] event_name ONSCHEDULE schedule [ONCOMPLETION [NOT] PRESERVE] [ENABLE|DISABLE|DISABLEONSLAVE] [COMMENT 'stri

3.1.15 CREATE INDEX语句CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name [index_type] ON tbl_name (key_part,...) [index_option] [algorithm_option | lock

CREATELOGFILEGROUP logfile_group ADDUNDOFILE 'undo_file' [INITIAL_SIZE [=] initial_size] [UNDO_BUFFER_SIZE [=] undo_buffer_size] [REDO_BUFFER_SIZE [=]

CREATE [DEFINER= user] PROCEDURE sp_name ([proc_parameter[,...]]) [characteristic ...] routine_bodyCREATE [DEFINER= user] FUNCTION sp_name ([func_para

CREATESERVER server_name FOREIGNDATAWRAPPER wrapper_name OPTIONS (option [, option] ...)option: { HOSTcharacter-literal |DATABASEcharacter-literal |US

CREATEORREPLACESPATIALREFERENCESYSTEM srid srs_attribute ...CREATESPATIALREFERENCESYSTEM [IFNOTEXISTS] srid srs_attribute ...srs_attribute: { NAME 'sr

CREATE [TEMPORARY] TABLE [IFNOTEXISTS] tbl_name (create_definition,...) [table_options] [partition_options]CREATE [TEMPORARY] TABLE [IFNOTEXISTS] tbl_

CREATE TABLE语句保留CREATE TABLE创建表时,原始语句(包括所有规范和表选项)由MySQL存储。该信息将保留,以便在您使用ALTER TABLE语句更改存储引擎,排序规则或其他设置时,保留指定的原始表选项。即使两个引擎支持的行格式不同,这也使您可以在InnoDB和MyISAM表类

用于CREATE TABLE ... LIKE根据另一个表的定义创建一个空表,包括在原始表中定义的任何列属性和索引:CREATETABLE new_tbl LIKE orig_tbl;使用与原始表相同的表存储格式版本创建副本。该SELECT权限需要对原始表。LIKE仅适用于基表,不适用于视图。重要您

您可以通过在SELECT语句末尾添加一条语句来从另一个表创建一个表CREATE TABLE:CREATETABLE new_tbl [AS] SELECT*FROM orig_tbl;MySQL为中的所有元素创建新列SELECT。例如:mysql>CREATETABLE test (a INT

MySQL支持外键(允许跨表交叉引用相关数据)和外键约束,这有助于使相关数据保持一致。外键关系涉及一个包含初始列值的父表,以及一个具有引用父列值的列值的子表。在子表上定义了外键约束。在CREATE TABLEor ALTER TABLE语句中定义外键约束的基本语法包括以下内容:[CONSTRAINT

在MySQL 8.0.16之前,CREATE TABLE仅允许以下有限的表CHECK约束语法版本被解析和忽略:CHECK (expr)从MySQL 8.0.16开始,CREATE TABLE允许CHECK对所有存储引擎使用表和列约束的核心功能。对于表约束和列约束,都CREATE TABLE允许使用以

在某些情况下,MySQL会默默地从CREATE TABLEor ALTER TABLE语句中给出的列规范中更改列规范。这些可能是对数据类型,与数据类型关联的属性或索引规范的更改。所有更改均受内部65,535字节的行大小限制,这可能会导致某些尝试更改数据类型的尝试失败。请参见“数据表的限制”。列,其一

CREATE TABLE支持生成列的规范。根据列定义中包含的表达式计算生成的列的值。NDB存储引擎还支持生成的列。以下简单示例显示了一个表,该表存储sidea和sideb列中直角三角形的边的长度,并计算下斜边的长度sidec(其他边的平方和的平方根):CREATETABLE triangle ( s

InnoDB支持虚拟生成的列上的二级索引。不支持其他索引类型。在虚拟列上定义的二级索引有时称为“虚拟索引”。可以在一个或多个虚拟列上或在虚拟列和常规列或存储的生成列的组合上创建二级索引。包含虚拟列的二级索引可以定义为UNIQUE。在虚拟生成的列上创建二级索引时,生成的列值将在索引记录中实现。如果索引

在MySQL NDB Cluster中,CREATE TABLEor ALTER TABLE语句中的表注释还可用于指定一个NDB_TABLE选项,该选项由一个或多个名称-值对组成,并在字符串后用逗号分隔(如果需要)NDB_TABLE=。名称和值语法的完整语法如下所示:COMMENT="NDB_TAB

CREATE [UNDO] TABLESPACE tablespace_name InnoDB andNDB: [ADDDATAFILE 'file_name'] InnoDB only: [FILE_BLOCK_SIZE=value] [ENCRYPTION [=] {'Y'|'N'}] NDBo

CREATE [DEFINER= user] TRIGGER trigger_name trigger_time trigger_event ON tbl_name FOREACHROW [trigger_order] trigger_bodytrigger_time: { BEFORE|AFTER

CREATE [ORREPLACE] [ALGORITHM= {UNDEFINED|MERGE|TEMPTABLE}] [DEFINER= user] [SQLSECURITY { DEFINER|INVOKER }] VIEW view_name [(column_list)] AS select

DROP {DATABASE|SCHEMA} [IFEXISTS] db_nameDROP DATABASE删除数据库中的所有表并删除数据库。此声明要非常小心!要使用DROP DATABASE,您需要DROP数据库特权。DROP SCHEMA是的同义词DROP DATABASE。重要删除数据库时,不

DROPEVENT [IFEXISTS] event_name该语句删除名为的事件event_name。该事件立即停止活动,并已从服务器中完全删除。如果事件不存在,则会发生event_name错误ERROR 1517(HY000):未知事件''。您可以覆盖它,并使该语句针对不存在的事件生成警告,而不

该DROP FUNCTION语句用于删除存储的函数和用户定义的函数(UDF):有关删除存储函数的信息,请参见“ DROP PROCEDURE和DROP FUNCTION语句”。有关删除用户定义函数的信息,请参见“ DROP FUNCTION语句”。DROPFUNCTION function_name

DROPINDEX index_name ON tbl_name [algorithm_option | lock_option] ...algorithm_option: ALGORITHM [=] {DEFAULT|INPLACE|COPY}lock_option: LOCK [=] {DEFA

DROPLOGFILEGROUP logfile_group ENGINE [=] engine_name该语句删除名为的日志文件组logfile_group。日志文件组必须已经存在,否则将导致错误。(有关创建日志文件组的信息,请参见“ CREATE LOGFILE GROUP语句”。)重要在删除日

DROP {PROCEDURE|FUNCTION} [IFEXISTS] sp_name该语句用于删除存储过程或函数。即,将指定的例程从服务器中删除。您必须具有ALTER ROUTINE例程的特权。(如果automatic_sp_privileges启用了系统变量,则该特权EXECUTE将在创建例程

DROPSERVER [ IFEXISTS ] server_name删除名为的服务器的服务器定义server_name。mysql.servers表中的相应行将被删除。此语句需要SUPER特权。为表删除服务器不会影响FEDERATED在创建表时使用此连接信息的任何表。请参见“ CREATE SER

DROPSPATIALREFERENCESYSTEM [IFEXISTS] sridsrid: 32-bit unsigned integer该语句从数据字典中删除空间参考系统(SRS)定义。它需要SUPER特权。例:DROPSPATIALREFERENCESYSTEM 4120;如果不存在带有SR

DROP [TEMPORARY] TABLE [IFEXISTS] tbl_name [, tbl_name] ... [RESTRICT|CASCADE]DROP TABLE删除一个或多个表。您必须具有DROP每个表的特权。请谨慎使用此声明!对于每个表,它将删除表定义和所有表数据。如果表已分区,则

DROP [UNDO] TABLESPACE tablespace_name [ENGINE [=] engine_name]该语句删除先前使用创建的表空间CREATE TABLESPACE。NDB和InnoDB存储引擎支持它。UNDO必须指定在MySQL 8.0.14中引入的关键字以删除撤消表空间

DROPTRIGGER [IFEXISTS] [schema_name.]trigger_name该语句删除触发器。模式(数据库)名称是可选的。如果省略该模式,则从默认模式删除该触发器。DROP TRIGGER需要TRIGGER与触发器关联的表的特权。使用IF EXISTS以防止发生错误,从一个不存

DROPVIEW [IFEXISTS] view_name [, view_name] ... [RESTRICT|CASCADE]DROP VIEW删除一个或多个视图。您必须具有DROP每个视图的特权。如果在参数列表中命名的视图不存在,则该语句将失败,并显示一条错误消息,按名称指示无法删除哪些不存

RENAMETABLE tbl_name TO new_tbl_name [, tbl_name2 TO new_tbl_name2] ...RENAME TABLE重命名一个或多个表。您必须具有ALTER与DROP原始表的权限,以及CREATE与INSERT新表的权限。例如,重命名一个指定的表ol

TRUNCATE [TABLE] tbl_nameTRUNCATE TABLE完全清空一张桌子。它需要DROP特权。从逻辑上讲,TRUNCATE TABLE它类似于DELETE删除所有行的语句或DROP TABLE and CREATE TABLE语句的序列。为了获得高性能,请TRUNCATE TA

mysql数据表交叉引用_数据定义语句相关推荐

  1. Oracle数据表导入导出_数据迁移用

    0.背景:突然接到居家办公的通知,工作用数据全部在内网,需要全部拷出带走,最大的单个表3.7G左右.根据往常经验将Oracle库中表导出为xlsx(方便与同事沟通使用),发现效率太低,且受制于数据量太 ...

  2. mysql纵表 主键_数据库面试题-sql语句

    原标题:数据库面试题-sql语句 1,写出一条Sql语句:取出表A中第31到第40记录(SQLServer,以自动增长的ID作为主键,注意:ID可能不是连续的. 答: → 解1: select top ...

  3. mysql数据库视图重命名_数据表和视图:修改数据表

    在MySQL中,ALTER 语句用来修改数据表名称或者数据表字段名称.也可以用来添加或者删除数据表字段. ALTER 语句经常和"ADD", "DROP" an ...

  4. mysql 重建分区_详解mysql重建表分区并保留数据的相关方法

    本文介绍mysql重建表分区并保留数据的方法,mysql的表分区(partition)可以把一个表的记录分开多个区去存储,查询时可根据查询的条件在对应的分区搜寻,而不需要整表查询,提高查询效率. 有分 ...

  5. mysql创建表参数_MySQL创建数据表(CREATE TABLE语句)

    在创建数据库之后,接下来就要在数据库中创建数据表.所谓创建数据表,指的是在已经创建的数据库中建立新表. 创建数据表的过程是规定数据列的属性的过程,同时也是实施数据完整性(包括实体完整性.引用完整性和域 ...

  6. lmbs PHP,PHP 清空 MySql 指定数据表中的所有数据

    PHP 清空 MySql 指定数据表中的所有数据 PHP 清空 MySql 指定数据表中的所有数据,在烈火小编在网上闲逛时,这是某技术博客的一篇文章,说是文章,并没有文字,只有代码,经过测试可以使用, ...

  7. 【MySQL 创建数据表,并添加数据】

    MySQL 中创建数据表,并添加数据 1. 创建表 create table test_table( ID int, Ename varchar(255), job varchar(255), job ...

  8. mysql关联表删除、修改数据

    mysql关联表删除.修改数据 关联删除 关联修改 关联删除 -- 多表关联查询删除: -- from 前面用表名的别名才可以,否则会修改失败: DELETE s,u1 FROM stu as s I ...

  9. MySQL中给数据表插入多行数据

    有时因为测试需求,需要给某数据表中插入多行数据,所以自己就琢磨了一下,该过程实现涉及到了MySQL存储过程,想详细了解的可看下这个博客:MySQL存储过程,以下是具体的实现过程: 1.先创建一个表: ...

最新文章

  1. python 倒叙 数组_打基础一定要吃透这12类 Python 内置函数
  2. 北大OJ百练——4074:积水量(C语言)
  3. boost::intrusive::pointer_traits用法的测试程序
  4. 函数计算FC让游戏群采集营销数据滴水不漏
  5. Golang入门教程(二)Ubuntu16.04下安装golang(实例:Golang 定时任务管理器)
  6. 为什么微信推荐这么快?
  7. L1-036 A乘以B
  8. /usr/bin/ld: 找不到 -lopencv_dep_cudart
  9. 帝国CMS模板|中国历史网整站数据MIP源码下载、带Tags提取插件
  10. 构建项目AppFuse+QuickStart
  11. express html页面,Express使用html模板
  12. 错误票据java_【蓝桥杯】错误票据 - osc_bskh1wlw的个人空间 - OSCHINA - 中文开源技术交流社区...
  13. 网站源代码遭公开,2.43亿名巴西公民个人数据遭泄露
  14. GaussDB数据dump实现完全同步
  15. 实验1-6 输出带框文字 (5 分)
  16. android 8.0 iso6,微信8.0.6更新了什么?IOS系统微信8.0.6版本更新详情一览[多图]
  17. 幼儿园案例经验迁移_2020年幼儿园中班教育笔记 生活经验的迁移
  18. 震网三代漏洞复现(CVE-2017-8464)
  19. Unity编辑器拓展-写一个查看当前所有PlayerPrefsKey的窗口
  20. windows media player控件播放器属性及方法使用

热门文章

  1. mybatis学习(39):动态sql片段
  2. xxljob 配置具体定时任务_记一次xxl-job定时任务没有触发的问题
  3. [资源]推荐一些Python书籍和教程,入门和进阶的都有!
  4. 如何查看电脑显卡配置_组装电脑:电脑配置显卡推荐
  5. Zabbix 3.0 配置企业微信报警(注册---测试)
  6. VSCode中Markdown目录显示异常
  7. GO语言-基础语法:条件判断
  8. 分享自己作为一个程序员的找工作经历
  9. 真正能成功的人,不见得是最聪明的,也小见得是学历最高的,而是最能面对问题、锲而不舍的人。...
  10. SharePoint 2013:解决添加域名后每次都需要登录的问题