阅读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. 5大JavaScript前端框架简介

    译者按: 简要介绍五大前端框架特性 原文: Top 5 JavaScript Frameworks 译者: Fundebug 为了保证可读性,本文采用意译而非直译.另外,本文版权归原作者所有,翻译仅用 ...

  2. 洛谷P4563 [JXOI2018]守卫(dp)

    题意 题目链接 Sol 非常有意思的题目. 我们设\(f[l][r]\)表示区间\([l,r]\)的答案. 显然\(r\)位置一定有一个保镖 同时不难观察到一个性质:拿\([1, n]\)来说,设其观 ...

  3. git命令详解( 二 )

    这是git详解的第二篇,最近这个加班有点虚,所以文章也写的比较懒了,一到加班不得已,保温杯里泡枸杞啊,不扯了,今天我们来看看git的第二篇 这篇内容主要是git的一些远程命令 远程仓库 git clo ...

  4. Git服务器配置及本地克隆提交、服务器获取

    1.服务器Git安装配置 相关链接 相关链接 注意ssh-keygen .修改权限 权限:    相关链接   2.本地获取 git clone name@ip:服务器项目位置 相关链接   3.创建 ...

  5. 【转载】Android RecyclerView 使用完全解析 体验艺术般的控件

    崇拜下鸿洋大神,原文地址:http://blog.csdn.net/lmj623565791/article/details/45059587 概述 RecyclerView出现已经有一段时间了,相信 ...

  6. CentOS上用Squid搭建HTTP代理小结

    安装Squid yum install squid -y # -y 代表自动选择y,全自动安装 安装后,可以自定义http代理端口,设置来源IP白名单等 vi /etc/squid/squid.con ...

  7. Spark内存分配诊断

    1.JVM自带众多内存诊断的工具,例如:JMap,JConsole等,第三方IBM JVM Profile Tools等. 2.日志!在开发.测试.生产环境中最合适的就是日志,特别是Driver产生的 ...

  8. [20180718]拷贝数据文件从dg库.txt

    [20180718]拷贝数据文件从dg库.txt 1.测试环境:SCOTT@book> @ ver1PORT_STRING                    VERSION        B ...

  9. python第十二天 生成器,迭代器,内置函数

    第二模块学习:  生成器,迭代器,内置函数 生成器特点:只有在调用时才会生成相应的数据,运行的速度快! 示例: def fil(max):#斐波那契数 n,a,b=0,0,1 #定义初始数据 whil ...

  10. 用Python实现数据结构之树

    树 树是由根结点和若干颗子树构成的.树是由一个集合以及在该集合上定义的一种关系构成的.集合中的元素称为树的结点,所定义的关系称为父子关系.父子关系在树的结点之间建立了一个层次结构.在这种层次结构中有一 ...