MySQL数据库基本使用(DDL)
MySQL是一种开源的关系型数据库管理系统,并且因为其性能、可靠性和适应性而备受关注。下面是最近一个月MySQL、Oracle、SQL Server的百度指数搜索指数对比:

可以看到,在最近一个月,MySQL的搜索量要远远高于其他两种数据库语言,表明了MySQL的用户多、受关注度高。在平时的项目中也经常使用,因此,先整理一下最基本的库和表结构的增删改查,也就是DDL(数据定义语句),其他内容后续再整理。
CREATE DATABASE db1 CHARSET utf8; --创建数据库db1
show DATABASES; --查看所有数据库
show create database db1; --查看新创建的数据库db1
drop database db1; --删除数据库db1
use db1; --选择数据库db1
show tables; --查看数据库中的所有表
desc t1; --查看数据表t1的结构
--创建数据表t1
create table t1(
id int PRIMARY key auto_increment,
name varchar(11) not null,
age int(3),
sex enum("male","female")); --使用枚举类型,sex的值只能是枚举中的任意一个
select * from t1; --无条件查询表t1的所有记录
--往表t1中插入数据
insert into t1(id,name,age,sex) values(1,"wang",22,"male");
insert into t1(id,name,age,sex) values(2,"zhang",23,"female"),
(3,"li",22,"female"),
(4,"chen",22,"male");
insert into t1(name,age,sex) values("zhao",22,"male");
describe t1; --查看表结构
alter table t1 rename t2; --修改表名
desc t2;
alter table t2 engine=innodb; --修改表的存储引擎
--增加字段
alter table t2
add address varchar(255) not null after name;
alter table t2
add status varchar(255) not null first;
--删除字段
alter table t2 drop status;
--修改字段
alter table t2 modify address varchar(125) not null;
alter table t2 change address dizhi varchar(22) not null;
alter table t2 change dizhi address varchar(255) not null;
--删除主键
alter table t2 modify id int(15) not null;
desc t2;
--复制表
create table t3 select * from t2 where 1=2; --只复制表结构,不复制记录,key也不复制
show tables;
desc t3;
create table t4 select * from t2; --复制表结构和记录,key不复制
alter table t4 add primary key(id,name);
alter table t4 modify id int auto_increment;
desc t4;
--删除表
drop table t3;
alter table t3 add money decimal(4,2) not null;
alter table t3 modify id int primary key auto_increment not null;
insert into t3(name,address,age,sex,money) values("zhang","pingling",22,"male",99.99);
--decimal(m,n) m表示数据的总位数,n表示小数点后的位数,不算负号,精确的
--sql优化:创建表时,定长的类型往前放(比如性别),变长的类型网后放(比如地址、描述信息)
MySQL数据库基本使用(DDL)的更多相关文章
- Mysql 数据库操作之DDL、DML、DQL语句操作
Mysql 数据库操作之DDL.DML.DQL语句操作 设置数据库用户名密码 l Show databases 查看数据库列表信息 l 查看数据库中的数据表信息 ,格式: use 数据库名: sh ...
- python-对于mysql数据库的操作
python操作mysql数据库 问题:DDL,DCL,DML的区别? 语言与框架:jdbc/odbc操作数据库 java(ibatis/hibernate/jpa)操作数据库 客户端工具:navic ...
- MYSQL初级学习笔记一:MYSQL常用命令和数据库操作(DDL)!(视频序号:初级_3,4)
知识点一:MYSQL常用命令(3) 登入方法:一,mysql –u 账号 –p 密码 退出方法:一,EXIT,QUIT 修改MYSQL命令提示符: 连接上客户机之后,通常使用prompt命令修改: 连 ...
- 第1 章 mysql数据库之简单的DDL和DML sql语句
一.SQL 介绍 1.什么是sql? SQL,英文全称(Structured Query Language),中文是结构化查询语言,它是一种对关系数据库中数据进行定义和操作的语言方法,是大多数关系数据 ...
- MySQL数据库之DDL(数据定义语言)
1.MySQL数据库之DDL创建.删除.切换 (1)查看所有数据库 show databases: (2)切换数据库 use 数据库名: (3)创建数据库 create database 数据库名: ...
- 35、mysql数据库(ddl)
35.1.数据库之库操作: 1.创建数据库(在磁盘上创建一个对应的文件夹): create database [if not exists] db_name [character set xxx]; ...
- 将现有MySQL数据库改为大小写不敏感
用过MySQL的应该都会注意到,默认情况下,Linux下安装的MySQL是大小写敏感的,也就是说Table1和table1可以同时存在.而Windows下的MySQL却是大小写不敏感的,所有表名和数据 ...
- MySQL数据库常用命令
1.连接mysql数据库:mysql -u用户名 -p密码; 2.创建数据库:create database 数据库名称; 3.删除数据库:drop database 数据库名称; 4.使用数据库:u ...
- [MySql] - 数据库备份还原
导出数据库到SQL方法: mysqldump.exe -u[USERNAME] -p[PASSWORD] -h [IP] jira --lock-all-tables > c:\db.sql m ...
随机推荐
- 【转载】文件上传那些事儿,文件ajax无刷上传
导语 正好新人导师让我看看能否把产品目前使用的FileUploader从老的组件库分离出来的,自己也查阅了相关的各种资料,对文件上传的这些事有了更进一步的了解.把这些知识点总结一下,供自己日后回顾,也 ...
- 一文带你学会国产加密算法SM4的java实现方案
前言 今天给大家带来一个国产SM4加密解密算法的java后端解决方案,代码完整,可以直接使用,希望给大家带来帮助,尤其是做政府系统的开发人员,可以直接应用到项目中进行加密解密. 画重点!是SM4哦,不 ...
- docker 容器核心技术
容器的数据卷(volume)也是占用磁盘空间,可以通过以下命令删除失效的volume: [root@localhost]# sudo docker volume rm $(docker volume ...
- Java—线程的生命周期及线程控制方法详解
线程生命周期5种状态 介绍 线程的生命周期经过新建(New).就绪(Runnable).运行(Running).阻塞(Bolocked)和死亡(Dead) 状态转换图 新建(New) 程序使用 ...
- gRPC负载均衡(自定义负载均衡策略)
前言 上篇文章介绍了如何实现gRPC负载均衡,但目前官方只提供了pick_first和round_robin两种负载均衡策略,轮询法round_robin不能满足因服务器配置不同而承担不同负载量,这篇 ...
- Appium自动化(15) - 针对 webview 进行自动化测试
如果你还想从头学起Appium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1693896.html webview 简介 WebVie ...
- Chipmunk-js物理引擎学习笔记
一.基本概念## 空间:在Chipmunk中,空间是所有对象容器.因此,刚体.形状.链接节点等对象都需要添加到空间中.空间控制这些对象的相互作用. 刚体:物理上的刚体指的是在运动和受力作用后,形状和大 ...
- WARN: Establishing SSL connection without server’s identity verification is not recommended
问题 使用Spring JDBC 连接 MySQL时,出现如下警告: WARN: Establishing SSL connection without server's identity verif ...
- 解决CentOS无法识别网卡问题
在联想电脑安装CentOS 6.9系统的时候,出现了无法上网问题,记录下这一路的坑. CentOS安装时在设置主机名这一步的下方有配置网络按钮,而此时该按钮点击无效.进入系统后发现没有网络连接. 在终 ...
- Node.js NPM Tutorial
Node.js NPM Tutorial – How to Get Started with NPM? NPM is the core of any application that is devel ...