mysql中dml操作_MySQL数据库DDL、DML详解

一、MySQL数据库数据类型

<1> MySQL数据库中支持多种数据类型数值型

字符型

日期型

<2> 常用的数据类型整型int:整型,存储整数

int(M): M表示预期值,与存储大小和数值的范围无关id int                    1

id int(3) zerofill 001

zerofill 零填充 会在左侧补0

tinyint         1        -128~127

smallint       2        32767/65535

int               4        21亿

bigint           8        兆

mediumint    3        八百多万/一千六百多万

浮点型float[(M,D)]: 浮点型,存储小数salary float(6,2): 表示最多6位,小数占2位,最大存储数值为:9999.99

double: 浮点型,小数

字符型char(M): 固定长度的字符串类型          name char(5)      '1     '

varchar(M): 可变长度的字符串类型 (推荐)   name varchar(5) '1'

text: 大的字符串类型,4G字符串

blob:字节类型

日期date: 日期类型,年月日 YYYY-MM-DD 日期格式

time: 时间类型,时分秒 HH:mm:ss 时间格式

year: 年份,年               YYYY格式的年份值

timestamp: 年月日 时分秒,时间戳 1970年1月1日0时0分0秒 - 2037年的某一个时刻   YYYYMMDDhhmmss

datetime: 年月日 时分秒  YY-MM-DD hh:mm:ss

注意:选择合适的数据类型,是数据库优化的一部分,short it better 原则

二、MySQL数据库中的数据的使用

如何操作:编程语言

<1> SQL概述结构化查询语言,可以用于查询和修改关系数据库的语言

SQL语言,是数据库的核心语言,被ISO采纳为数据库语言国际标准,几乎所有的数据库都支持SQL

<2> 组成数据定义语言(Data Definition Language, DDL): 用于管理和定义数据对象,包括数据库,数据表等create: 创建数据库和表

drop: 删除表对象

alter: 修改表结构

数据操作语言(Data Manipulation Language, DML): 用于操作数据库对象中所包含的数据insert: 添加数据

delete: 删除数据

update: 修改数据

数据查询语言(Data Query Language, DQL): 用于查询数据库对象中所包含的数据select: 查询数据

事务控制语言(Transaction Control Language, TCL): 包括提交事务、事务回滚commit: 提交事务

rollback: 事务回滚

savepoint: 事务节点

数据控制语言(Data Control Language, DCL): 用来管理数据库,包括管理权限以及数据更改grant: 授权

revoke: 收回权限

1. 数据定义语言(DDL)

数据库的操作<1> 创建数据库语法格式: creat database [if not exists] 数据库名称 [character set [=] 编码名称];     // '[]'表示可有可无例如:

create database ruochen;

create database if not exists ruochen; // 忽视错误,显示警告<2> 查看数据库语法格式show databases; // 查看所有的数据库

show create database 数据库名称; // 查看某一个已经创建的数据库

show warnings; // 查看警告

create database db character set gbk; // 指定创建的数据库的字符集<3> 修改数据库语法格式: alter database [if not exists] 数据库名称 [character set 新的编码名称]例如:

alter database db character set = utf8;<4> 删除数据库语法格式:drop database 数据库名称;例如:

drop database ruochen; // 删除数据库

数据表的操作<1> 创建数据表使用一个数据库: use 数据库名称

select database(); // 查看当前正在使用的数据库

创建数据表语法:create table 表名(

字段名  字段类型  约束,

字段名  字段类型  约束,

......

)例如:创建用户表ceeate table user(

uid int,

username varchar(32),

password varchar(32),

birthday date,

sex enum('男', '女'))<2> 查询数据表show tables; // 显示当前数据库中所有的数据表

show columns from 表名; // 查询某张表表结构

desc 表名; // 查询某张表的表结构<3> 修改数据表修改表名方式一: alter table 表名 rename [as|to] 新表名例如:alter table user rename us;

方式二:rename table 旧表名 to 新表名 [,旧表名 to 新表名, ....];例如:rename table user to us;

添加列语法格式:alter table 表名 add [column] 列名 列定义 [first|after 列名];

例如:alter table user add sal double after password; // 在指定的列后面添加新的列

alter table user add phone varcher(32); // 默认在列的最后添加新的列

alter table user add hobby varchar(32) first; // 在列的最前面添加新的列

修改列定义语法格式:alter table 表名 modify 列名 列定义 [first|after 列名];

例如:alter table user modify sex varchar(32) first;

修改列名语法格式:alter table 表名 change 列的列名 新的列名 新的列定义 [first|after 列名];

例如:alter table user change hobby address varchar(20) after sal;

删除列语法格式:alter table 表名 drop [column] 列名;

例如:alter table user drop phone;<4> 删除数据表语法格式:drop table 表名;

例如:drop table user;

2. 数据操作语言(DML)

<1> 插入操作语法格式:insert [into] 表名 [(列名1,列名2,....)] values|value (数值1|表达式,数值2|表达式,....);

例如:insert into teacher (id, name) values ('1', 'xian zheng ta yi ge yi');

insert into teacher value(2, '

wangjianlin', 'xian zheng ta yi ge yi'); // 如果前面不指定字段,默认采用所有字段,按照列的顺序添加

<2> 删除操作语法格式:delete from 表名 where 条件;

例如:delete from teacher where id=1; // 指定条件删除记录

delete from teacher; // 不带条件删除,删除所有记录

扩充:truncate table 表名; // 清空表,会清空表中所有数据例如

truncate table teacher;

面试题:delete删除与truncate 有什么区别?删除方式delete:一条一条的删除,不清空 auto_increment 记录数

truncate:直接将表中的数据进行清空, auto_increment 自增将被重置,从新开始

<3> 修改操作语法格式:update 表名 set 列名1=数值,列名2=数值,.... where 条件;

例如:update teacher set name='xiaosan',note='ming nian zai zhao yi ge' where id=1; // 带条件修改,修改指定记录

update teacher set name='xiaosi'; // 不带条件,修改表中所有数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值