DDL语句是定义语言的缩写,是对数据库内部的对象进行创建、删除、的操语句,它和DML语句最大的区别是DML只对表的数据进行操作,而不涉及表的定义、结构的修改,更不会涉及其它对象。
0、连接mysql
mysql -uxxx -pxxx -h192.168.0.123 -Pxxx
1、创建数据库
CREATE DATABASE dbname;
2、查看有哪些数据库
SHOW DATABASES;
3、选择将要操作的数据库
USE dbname;
4、删除数据库
DROP DATABASE dbname;
5、创建表
CREATE TABLE tablename(id INT(11) NOT NULL,name VARCHAR(256) NOT NULL);
6、查看表结构信息
DESC tablename; 或: SHOW CREATE TABLE tablename;
7、删除表
DROP TABLE tablename;
8、修改表
8.1修改表类型
语法:
ALTER TABLE tablename MODIFY [COLUMN] column_definition [FIRST | AFTER col_name]
如将上表的name varchar(256)改成char(128):
ALTER TABLE tablename MODIFY name CHAR(128) NOT NULL;
8.2增加表字段
语法: ALTER TABLE tablename ADD [COLUMN] column_definition [FIRST | AFTER col_name]; 如给上表添加age字段: ALTER TABLE tablename ADD age INT(11) NOT NULL;
8.3删除表字段
语法: ALTER TABLE tablename DROP [COLUMN] col_name; 如删除上表age字段: ALTER TABLE tablename DROP age;
8.4字段改名
语法: ALTER TABLE tablename CHANGE [COLUMN] old_col_name new_col_definition [FIRST | AFTER col_name]; 如修改上表字段name名为uname: ALTER TABLE tablename CHANGE name uname CHAR(128);
CHANGE和MODIFY都可以修改表字段定义,不同的是CHANGE写两次字段名,但是CHANGE可以修改列名,而MODIFY则不能。
8.5修改字段排列顺序
上面介绍的修改表定义后面都有一个可选项目[FIRST | AFTER col_name],这个选项可以用来修改字段在表中的顺序,ADD新增字段的默认位置是在表的最后,CHANGE和MODIFY默认不改动字段的位置。
如:
在上表中添加birth字段,并放到列id后面: ALTER TABLE tablename ADD birth DATETIME AFTER id; 再次修改,把它放到uname表后面: ALTER TABLE tablename MODIFY birth DATETIME NOT NULL AFTER uname;
8.6修改表名
语法: ALTER TABLE tablename RENAME [TO] new_tablename; 如把上面表名tablename改成test: ALTER TABLE tablename RENAME test;
8.7修改表引擎
http://chenzehe.iteye.com/blog/1558543
9、锁表
锁表: FLUSH TABLES WITH READ LOCK; 解锁: UNLOCK TABLES;
10、创建索引
1.ALTER TABLE ALTER TABLE用来创建普通索引、UNIQUE索引或PRIMARY KEY索引。 ALTER TABLE table_name ADD INDEX index_name (column_list) ALTER TABLE table_name ADD UNIQUE (column_list) ALTER TABLE table_name ADD PRIMARY KEY (column_list) 2.CREATE INDEX CREATE INDEX可对表增加普通索引或UNIQUE索引。 CREATE INDEX index_name ON table_name (column_list) CREATE UNIQUE INDEX index_name ON table_name (column_list)
11、删除索引
可利用ALTER TABLE或DROP INDEX语句来删除索引。类似于CREATE INDEX语句,DROP INDEX可以在ALTER TABLE内部作为一条语句处理,语法如下。 DROP INDEX index_name ON talbe_name ALTER TABLE table_name DROP INDEX index_name ALTER TABLE table_name DROP PRIMARY KEY 其中,前两条语句是等价的,删除掉table_name中的索引index_name。 第3条语句只在删除PRIMARY KEY索引时使用,因为一个表只可能有一个PRIMARY KEY索引,因此不需要指定索引名。如果没有创建PRIMARY KEY索引,但表具有一个或多个UNIQUE索引,则MySQL将删除第一个UNIQUE索引。
相关推荐
DDL 数据定义语言 create、drop、alter 数据定义语言 create、drop、alter 语句 。 DML 数据操纵语言 insert、delete、update 定义对数据库记录的增、删、改操作。 DQL 数据库查询语言 select 定义对数据库...
图形化实现sqlserver转换为mysql ddl(需字段注释) 应用于数据库、新老系统迁移,提升开发效率。
MySQL DDL 语句 什么是DDL,DML。 DDL 是数据定义语言,就是对数据库,表层面的操作,如 CREATE,ALTER,DROP。DML 是数据操作语言,也就是对表中数据的增删改查,如 SELECT,UPDATE,INSERT,DELETE。 假设现在有...
本篇文章将深入探讨mysqlddl的使用,以及其在数据库管理中的重要性。 首先,让我们理解什么是DDL。DDL语句主要用于定义数据库的结构,比如CREATE TABLE用于创建新表,ALTER TABLE用于修改已有的表结构,DROP TABLE...
1. **DDL转换**:该工具能够解析MySQL的CREATE TABLE、ALTER TABLE等DDL语句,并将其转换为PostgreSQL可以理解的语法。这涉及到字段类型、约束、索引等的映射,例如,MySQL的`ENUM`类型在PostgreSQL中可能需要转换为...
我自己没事时写的,一直在用 从MySQL客户端右键表 查看详细信息 复制DDL语句 粘贴到文本框中就可以了
在本示例中,主要展示了如何使用DDL语句创建、修改和删除MySQL数据库中的表。 首先,创建用户表`t_user`: ```sql create table t_user( id int primary key auto_increment, username varchar(40), password ...
MySQL学习笔记(1)主要介绍了如何使用DDL语句来操作MySQL数据库,包括创建、查看、修改和删除数据库及表。DDL是数据定义语言,用于定义数据库中的各种对象,如数据库、表、列和索引。在实践中,常用的DDL关键字有`...
4. **导入MySQL**:将生成的DDL语句复制到MySQL管理工具(如MySQL Workbench或命令行客户端),执行创建表的操作。 这种方法的优点在于提高了设计效率,减少了手动编写DDL语句的错误,尤其适合于数据库结构复杂或者...
`DDL-MySQL.sql` 文件则很可能是一个包含MySQL DDL语句的脚本,用于创建或修改MySQL数据库的表格和其他对象。这个脚本可能会演示如何使用`CREATE TABLE`语句来定义一个新的表格,包括指定列的名称、数据类型和长度,...
在这个场景中,“kettle批量导出mysql建表语句”是一个关于如何使用Kettle来自动化地从MySQL数据库中提取建表语句,包括数据表和视图的创建语句,以便于备份或在其他环境中重建相同结构的过程。 首先,我们需要了解...
数据库文档生成是数据库管理中的一个重要环节,它有助于开发者和DBA更好地理解和维护...在实际使用过程中,根据具体的数据库系统(如MySQL、PostgreSQL、Oracle等)和团队需求,可能需要对工具进行适当的调整和配置。
本测试着重于理解和运用MySQL的DDL语句,包括但不限于创建表、修改表结构、删除表以及管理数据库对象。 在"main.mysql"文件中,我们可能找到了一系列用于测试的DDL语句实例。这些语句可能包括创建新表的`CREATE ...
MySQL批量导出建表语句是一项常见的数据库管理任务,它涉及到数据库备份、迁移或复制到新的环境。在本例中,"mysql批量导出建表语句.zip" 是一个压缩包,包含了一种使用Kettle(也称为Pentaho Data Integration,...
DDL parase并转换为BigQuery JSON模式和DDL语句模块,可在Python中使用。 特征 DDL解析并获取表架构信息。 当前,仅支持CREATE TABLE语句。 转换为和。 支持的数据库是MySQL / MariaDB,PostgreSQL,Oracle,...
以下是一份全面的MySQL语法语句概述: 一、数据定义(DDL - Data Definition Language) 1. 创建数据库:`CREATE DATABASE 数据库名;` 2. 删除数据库:`DROP DATABASE 数据库名;` 3. 创建表:`CREATE TABLE 表名 ...
1:DDL语句:数据定义语言。常用关键字主要包括create、drop、alter等。 2:DML语句:数据操纵语言,用于添加、删除、更新、查找。其只对表内部数据进行操作,而不涉及表的定义和结构的修改。常用关键字主要包括insert、...
- 当从MySQL 5.7主服务器向8.0从服务器复制时,需要注意由于`DROP TABLE`行为的改变,可能会导致部分完成的DDL语句在从服务器上失败。为了避免此类问题,建议使用`IF EXISTS`语法来预防对不存在表的删除。 总之,...
"mysqltooracle_cn"这个工具可能包含了自动化的转换功能,它能帮助解析MySQL的DDL语句并生成相应的Oracle DDL,同时也可能包含数据迁移的逻辑。 在实际操作中,应先备份源数据库,然后根据工具的使用指南逐步进行...