标签:语句 数据库 MySQL 数据类型 名称 表名 table alter DDL
MySQL语句(DDL篇)
前言
今天和企业老师学习了一些基础的MySQL语句,在这里与大家分享一下,同样保留下这份笔记,供我以后去参考。当然如今很多都有图形化的数据库软件,不一定需要用SQL语句操作数据库,但也存在许多时候没有图形化数据库的情况,这时数据库的SQL语句就十分重要了。话不多说,上干货!!!
一、什么是DDL?
DDL(Data Definition Language)数据定义语言
用来定义数据库对象:数据库,表列等。
关键字:create, drop, alter,desc,show等
二、DDL语句
1.操作数据库:CRUD
1.C(Create):创建
1.创建数据库
create database 数据库名称;(当存在所要创建的数据库时,会报错,推荐下面第二种建库的方法)
2.创建数据库,判断不存在,在创建:
create database if not exists 数据库名称;
(判断所创建的数据库是否存在,如果存在则创建,不存在,则不操作,当存在该数据库的时候不会报错)
3.创建数据库,并指定字符集
create database 数据库名称 character set 字符集名;
2.R(Retrieve):查询
1.查询所有数据库的名称
show databases
2.查询某个数据库的字符集:查询某个数据库的创建语句
show create database 数据库名称
3.U(Update):修改
修改数据库的字符集
alter database 数据库名称 character set 字符集名称;
4.D(Delete):删除
1.删除数据库
drop database 数据库名称;
2.判断数据库存在,再删除
drop database if exists 数据库名称;
5.使用数据库
1.查询当前正在使用的数据库名称
select database();
2.使用数据库
use 数据库名称;
2.操作表:CRUD
1.C(Create):创建
1.语法
create table 表名(
列名1 数据类型1,
列名2 数据类型2,
......
列名n 数据类型n
); *注意:(最后一列不用加逗号)
2.数据类型:
1.int:整数类型
age int
2.double:小数类型
score double(M,D)来表示,M表示该值的总共长度,D表示小数点后面的长度
3.date:日期,只包含年月日 yyyy-MM-dd
4.datetime:日期,包含年月日时分秒yyyy-MM-dd HH:mm:ss
5.timestamp:时间戳类型,含年月日时分秒 yyyy-MM-dd HH:mm:ss
如果将来不给这个字段赋值,或者赋值为null,则默认使用
当前系统的时间,来自动赋值。
6.varchar:字符串
name varchar(20):姓名最大20个字符
zhangsan 8个字符 张三 2个字符
3.复制表
create table 表名 like 被复制的表名;
2.R(Retrieve):查询
1.查询某个数据库中所有的表名称
show tables;
2.查询表结构
desc 表名称;
3.U(Update):修改
1.修改表名
alter table 表名 rename to 新的表名;
2.修改表的字符集
alter table 表名 character set 字符集名称;
3.添加一列
alter table 表名 add 列名 数据类型;
4.修改列名称 类型
alter table 表名 change 列名 新列名 新数据类型;
alter table 表名 modify 列名 新数据类型;(只改数据类型)
5.删除列
alter table 表名 drop 列名;
4.D(Delete):删除
删除表
drop table 表名;
drop table if exists 表名;(这种方式更好,更加安全)
总结
以上就是今天要分享的内容,本文仅仅简单介绍了MySQL语句中的DDL语句的用法,希望对大家有所帮助,同时这也是我将来更好回顾MySQL的场所。
标签:语句,数据库,MySQL,数据类型,名称,表名,table,alter,DDL 来源: https://blog.csdn.net/summeblace/article/details/118994680
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。