阅读MySQL语法时,需要注意的规则:

符号用来指出几个选择中的一个,比如:null | not null表示或者给出null或者给出not null;

包含在方括号中的关键字或子句(如[like this])是可选的;

既没有列出所有的MySQL语句,也没有列出每一条子句和选项。

一、常用语法

1、alter table:更新已存在表的模式

alter table tablename

(      add column datatype [null | not null] [constarints],

change column columns datatype [null | not null]  [contarints].

drop column,);

2、commit:将事务处理写到数据库

commit;

3、create index:在一个或多个列上创建索引

create index indexname on tablename (column  [asc | desc],...);

4、create procedure:创建存储过程

create procedure procedurename( [parameters] )  begin ...... end;

5、create table:创建新数据库表

create table tablename

(         column datatype [null | not null] [constraints],

column datatype [null | not null] [constraints],

......);

6、create user:向系统中添加新的用户账户

create user username[@hostname]

[identified by [passwrod] 'password'];

7、create view:创建一个或多个表上的新视图

create [or replace] view viewname as select ...;

8、delete:从表中删除一行或多行

delete from tablename [where ...];

9、drop:永久删除数据库对象(表、视图、索引等)

drop database | index | procedure | table | trigger | user | view itemname;

10、insert:给表增加一行

insert into tablename [(columns,...)] values(values,...)

11、insert select:插入select结果到一个表

insert into tablename[(columns,...)]

select columns,... from tablename,...

[where ...];

12、rollback:撤销一个事务处理块

rollback [ to saveprointname];

13、savepoint:为使用rollback语句设立保留点

savepoint sql;

14、select:从一个或多个表(视图)中检索数据

select columnname,... from tablename,...

[where ...]

[union ...]

[group by ...]

[having ...]

[order by ...]

15、start transaction:一个新的事务处理块的开始

start transaction;

16、update:更新表中的一行或多行

uptable tablename set columname = value, ... [where ...];

二、数据类型

数据类型:定义列中可以存储什么数据以及该数据实际怎样存储的基本规则,其用于以下几个目的:

①允许限制可存储在列中的数据

②允许在内部更有效的存储数据

③允许变换排序顺序(作为数值数据类型,数值才能正确排序)

1、串数据类型

该类型为最常用的数据类型,用来存储串(比如名字、地址等);有两种串类型,分别是定长串和变长串

定长串:接受长度固定的字符串,其长度实在创建表时指定的;定长列不允许多余指定的字符数目,它们分配的存储空间与指定的一样多(比如char)

变长串:存储可变长度的文本,有些变长数据类型具有最大定长,有些是完全变长的,不论哪种,指定的数据得到保存即可(灵活)

PS:MySQL处理定长列比变长列快速的很多,且MySQL不许云对变长列(或一个列的可变部分)进行索引

串数据类型表:

PS:①不管是用任何形式的串数据类型,串值都必须括在引号内(通常使用单引号)

如果数值是计算(求和平均等)中使用的数值,应存储在数值数据类型列中;如果作为字符串(可能只包含数字)使用,则应保存在串数据类型列中;

2、数值数据类型

数值数据类型存储数值,MySQL支持多种数值数据类型,每种存储的数值具有不同的取值范围;

数值数据类型表:

PS:所有数值数据类型(除bit和bollean)都可以有符号或者无符号,有符号数值列可以存储正或负的数值,无符号数值列只能存储正数,默认情况为有符号(与串不同,数值不应该在括号内)

 

3、日期和时间数据类型

日期和时间数据类型表:

4、二进制数据类型

二进制数据类型可存储任何数据(甚至包括二进制信息),如图像、多媒体、字处理文档等

二进制数据类型表:

MySQL(六)常用语法和数据类型的更多相关文章

  1. mysql基础之基本数据类型

    原文:mysql基础之基本数据类型 列类型学习 mysql三大列类型 整型 Tinyint/ smallint/ mediumint/int/ bigint(M) unsigned zerofill ...

  2. (1.1)mysql 选择合适的数据类型

    (1.1)mysql 选择合适的数据类型 1.char与varchar [1.1]char 在内容未满定义长度时,做空格填充,且字符串末尾空格会被截断:超出定义长度也会被截断.  如:char(4)  ...

  3. DB2 Vs MySQL系列 | MySQL与DB2的数据类型对比

    随着MySQL数据库的应用越来越广泛,DB2向MySQL数据库的迁移需求也越来越多.进行数据库之间迁移的时候,首先遇到的并且也是最基本最重要的就是两种数据库数据类型之间的转换. 相关阅读: 从商用到开 ...

  4. (2.5)Mysql之SQL基础——数据类型

    (2.5)Mysql之SQL基础——数据类型 关键词:mysql数据类型 目录: 一.整数型 二.小数型(以下均不能使用无符号) 三.日期时间型 四.字符串型 一.整数型 额外参数示例: int [( ...

  5. Mysql的三种数据类型

    Mysql的三种数据类型 1.数值类型 2.日期和时间类型 3.字符串类型 00x1 [数值类型] 00x2 [日期和时间类型] 00x3 [字符串类型]

  6. mysql数据库,当数据类型是float时,查询居然查询不出数据来

    mysql数据库,当数据类型是float时,查询居然查询不出数据来,类似如下: 以后mysql数据库不用float类型,而double类型可以查得出来.

  7. mysql六:索引原理与慢查询优化

    一 介绍 为何要有索引? 一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,在生产环境中,我们遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,因此对查询语句 ...

  8. MySQL之表的数据类型

    一 介绍 存储引擎决定了表的类型,而表内存放的数据也要有不同的类型,每种数据类型都有自己的宽度,但宽度是可选的 详细参考: http://www.runoob.com/mysql/mysql-data ...

  9. 【Python】(六)Python数据类型-列表和元组,九浅一深,用得到

    您好,我是码农飞哥,感谢您阅读本文,欢迎一键三连哦. 本文分十个章节介绍数据类型中的列表(list)和元组(tuple),从使用说到底层实现,包您满意 干货满满,建议收藏,需要用到时常看看. 小伙伴们 ...

随机推荐

  1. Python args kwargs 技巧

    def f(*args): print(args) a=[1, 2, 3] f(a) f(*a) 运行结果: ([1, 2, 3],) (1, 2, 3) def f(**kwargs): print ...

  2. WebGL学习笔记(一)

    作者:朱金灿 来源:http://blog.csdn.net/clever101 (一)WebGL是什么? WebGL是一门在网页上显示三维图形的技术,你可以把它理解为把OpenGL从C/S端搬到了B ...

  3. mysql主从复制报错(一主一从):从库报错Last_SQL_Errno: 1008

    配置完主从复制后(一主一从),在从库删了一个测试库,结果在从库上使用show slave status\G查看主从同步状态报如下错误:Last_Errno: 1008,经过排查得知:主从环境删除要先在 ...

  4. loadrunner 运行场景-命令行运行场景

    运行场景-命令行运行场景 by:授客 QQ:1033553122 1 相对路径与绝对路径 在场景中为脚本指定一个相对位置,可以是相对于当前场景目录或lr安装目录. 当你运行一个场景,场景自动从这个相对 ...

  5. JavaScript大杂烩12 - 理解Ajax

    AJAX缘由 再次谈起这个话题,我深深的记得就在前几年,AJAX被炒的如火如荼,就好像不懂AJAX,就不会Web开发一样.要理解AJAX为什么会出现,就要先了解Web开发面临的问题. 我们先来回忆一下 ...

  6. Android、IOS文字居中偏离的解决方案

    前言 移动端开发,经常会遇到的问题,就是文字居中.一般都只能往css方向去fix这个问题. 自己以前也用过position:relative;top:-*px的方式去解决.

  7. Appium初识

    一. Appium工作原理 基本工作流程如下: Appium提供了一套web服务,Appium起一个Server(4723端口),用于与脚本client通信. server接收web driver(即 ...

  8. [20171124]xxd与通配符.txt

    [20171124]xxd与通配符.txt --//linux 上许多命令都支持通配符,比如$ ls -l *.txt-rw-r--r-- 1 oracle oinstall 44801024 201 ...

  9. Java中当前对象引用

    题: 计算机画图时,有点的概念,每个点由它的横坐标x 和 纵坐标 y 描述. 写一个类. 求两个点之间的曼哈顿距离 = 横向距离 + 纵向距离 例如,一个点(0,0) 和另一个点(1,1)的曼哈顿距离 ...

  10. HashTree【转】

    http://blog.csdn.net/yang_yulei/article/details/46337405 在各种数据结构(线性表.树等)中,记录在结构中的相对位置是随机的.因此在机构中查找记录 ...