MySQL基础——DDL语句

Posted 白巧克力LIN

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL基础——DDL语句相关的知识,希望对你有一定的参考价值。

目录

MySQL

SQL

DDL——数据定义

数据库操作

连接

查询

使用

创建

删除

数据表操作

创建

查询

修改

删除


mysql

MySQL是一个关系型数据库管理系统,其数据是保存在不同的数据表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

SQL

MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言,SQL语言可以分为:

  • DDL(Data Definition Language)语言:数据定义语言,用来定义数据库对象,如数据库、数据表和数据字段;

  • DML(Data Manipulation Language)语言:数据操作语言,用来对数据库表中的数据进行增删改查操作;

  • DQL(Data Query Language)语言:数据查询语言,用来查询数据库中表的记录;

  • DCL(Data Control Language)语言:数据控制语言,用来创建数据库用户、控制数据库的访问权限。

DDL——数据定义

数据库操作

连接

在对数据库操作之前,需要输入如下代码连接数据库:

mysql -u root -p

如下图所示:

查询

输入如下代码查询所有数据库:

show databases;  

输出结果如下图所示:

输入如下代码查询当前数据库:

select database();

输出如下图所示:

由于我们还没使用数据库,所以结果为NULL。

输入如下代码查看数据库编码:

show variables like 'character%';

如下图所示:

其中:

  • character_set_client 为客户端编码方式;

  • character_set_connection 为建立连接使用的编码;

  • character_set_database 为数据库的编码;

  • character_set_results 为结果集的编码;

  • character_set_server 为数据库服务器的编码;

使用

使用数据库语法如下:

use 数据库名;

如下图所示:

创建

创建数据库的语法如下:

create database [if not exists] 数据库名 [DEFAULT CHARSET 字符集] [COLLATE 排序规则] ;

方括号中的内容是可填可不填。

当不填时,示例代码如下图所示:

注意:

  • 不填if not exists时,当创建的数据库存在会发生报错,所以最好填if not exists;

  • 不填字符集时,创建的数据库默认的字符集为latin1;

删除

删除数据库的语法格式如下:

drop database [if exists] 数据库名;

同样:方括号可以填或不填。

如下图所示:

数据表操作

创建

创建数据表语法格式如下:

create table 表名(
    字段1 字段1类型 [comment 字段1注释],
    字段2 字段2类型 [comment 字段2注释],
    字段3 字段3类型 [comment 字段3注释],
    ......
    字段n 字段n类型 [comment 字段n注释]
)[comment 表注释];

注意:方括号是可选参数,在最后一个字段中没有逗号。

示例代码如下:

create table students(
    uid int comment '学生id',
    uname varchar(10) comment '学生名',
    upassword varchar(10) comment '学生密码'
)comment '学生表';

如下图所示:

这里我们创建了名为students的数据表。

查询

查询当前数据库所有数据表,代码如下:

show tables;

如下图所示:

在上一步中,我们使用mytest数据库并在数据库中创建了名为students的数据表,所以我们查询的当前数据库的所有表只有students数据表。

查询表结构的语法如下:

desc 表名;

示例代码如下:

use mytest;                 #选择mytest数据库
desc students;              #查看表结构

如下图所示:

查询指定表的建表语句语法如下:

show create table 表名;

示例代码如下:

show create table students;

如下图所示:

修改

添加数据表字段

添加数据表字段的语法如下:

alter table 表名 add 字段名 类型(长度) [comment 字段注释] [约束]

示例代码如下:

use mytest;                     # 使用mytest数据库
alter table students add sex varchar(2) comment '性别';       # 在students数据表中添加sex字段
desc students;                  #查询数据表结构

如下图所示:

这样我们就成功添加了名为sex的字段了。

修改数据表字段类型

修改数据表字段类型语法如下:

alter table 表名 modify 字段名 字段新数据类型(长度);

示例代码如下:

use mytest;             # 使用mytest数据库
alter table students modify upassword int(15);          #修改students数据表中的upassword字段的字段类型为int
desc students;          #查看students数据表结构

如下图所示:

修改字段名、字段类型

修改字段名、字段类型语法如下:

alter table 表名 change 旧字段名 新字段名 字段类型(长度) [comment 注释] [约束]

示例代码如下:

alter table students change upassword upwd int(30) comment '学生密码';

如下图所示:

修改数据表名

修改数据表名语法如下:

alter table 表名 rename to 新表名;

示例代码如下:

alter table students rename to students_table;

如下图所示:

删除

删除数据表字段

删除数据表字段语法如下:

alter table 表名 drop 字段名;

示例代码如下:

use mytest;                     #使用mytest数据库
alter table students_table drop sex;        #删除students_table数据表中的sex字段

如下图所示:

删除数据表

删除数据表语法如下:

truncate table 表名;      #删除指定表,并重新创建该表
drop table [if exists] 表名;  #删除数据表

示例代码如下:

use mytest;         #使用mytest数据库
truncate table students_table;  #删除students_table数据表并重新创建该表
show tables;        #查询当前数据库所有表
drop table if exists stdenets_tables;   #当students_tables数据表存在时删除
show tables;        #查询当前数据库所有表

如下图所示:

END!

好了,MySQL基础——DDL语句就学到这里了,下篇文章学习MySQL基础——DML语句

Mysql基础之准备及DDL语句

SQL语言概述

SQL(Structured Query Language)语言的全称是结构化查询语言。数据库管理系统通过SQL语言来管理数据库中的数据。
SQL语言分为三个部分:数据定义语言(Data Definition Language,简称为DDL)、数据操作语言(Data Manipulation Language,简称为DML)和数据控制语言(Data Control Language,简称为DCL)。
DDL语句:CREATE、ALTER、DROP
DML语句:update、insert、delete、select
DCL语句:是数据库控制功能。是用来设置或更改数据库用户或角色权限的语句,包括(grant,deny,revoke等)语句

MySQL的安装和启动

•yum安装
http://jingyan.baidu.com/article/c74d600079be530f6a595dc3.html
•rpm安装
http://www.cnblogs.com/xiaoit/p/3877913.html
•源码安装
http://blog.csdn.net/wendi_0506/article/details/39478369

数据库基本操作

1 SHOW DATABASES;                      显示所有数据库
2 CREATE DATABASE 数据库名;             创建数据库
3 DROP DATABASE 数据库名;               删除数据库

数据库表基本操作

CREATE TABLE 表名( 属性名数据类型[完整性约束条件],
            属性名数据类型[完整性约束条件],
           ...            属性名数据表格[完整性约束条件]);

1 DROP TABLE 表名;    删除表
2 DELETE TABLE 表名;   删除内容,不释放空间,不删除定义
3 TRUNCATE TABLE 表名;  删除内容,释放空间,但不删除定义

1 修改表名  ALTER TABLE 旧表名RENMAE 新表名;
2 修改字段  ALTER TABLE 表名CHANGE 旧属性名新属性名新数据类型
3 增加字段  ALTER TABLE 表名ADD 属性名1 数据类型[完整性约束条件] [FIRST | AFTER 属性名2]
4 删除字段  ALTER TABLE 表名DROP 属性名

1 查看基本表结构  DESCRIBE(DESC) 表名;
2 查看表详细结构  SHOW CREATE TABLE 表名;

 

以上是关于MySQL基础——DDL语句的主要内容,如果未能解决你的问题,请参考以下文章

Mysql基础之准备及DDL语句

MySQL基础DDL

MySQL基础——DDL语句

MySQL基础

MySQL基础 DDL

MySQL从入门到精通50讲-DDL语句详解