SQL基本语法---概述

来源:互联网 发布:韩信点兵的算法 编辑:程序博客网 时间:2024/05/22 03:32

SQL语句的功能

使用SQL语句,可以完成(在数据库中检索信息),(更新数据库信息),(改变数据库的结构)。

标准SQL语句的五种类型

查询语句(通常由select完成)。=====================重点介绍
DML语句也叫数据操作语言(主要由insert,update,delete完成)。
DDL语句也叫数据定义语句(主要由create,alter,drop和truncate(性能优于delete)四个关键字完成)。
DCL语句也叫数据控制语句(主要由grant和revoke两个关键字完成),其中DCL语句用于为数据库用户授权或者收回指定用户权限,通常无须程序员操作。
事务控制语句(主要由commit,rollback,和savepoint三个关键字完成).SQL语句不区分大小写!!!

SQL中的标识符(可用于定义表名,列名,变量)规范

1,标识符通常必须以字母开头。
2,标识符包括字母,数字和特殊字符(# _ $)。
3,同一个外模式的下的对象不应该同名。
4,不要使用当前数据库系统的关键字、保留字、,通常建议使用多个单词连缀而成,单词之间以下划线分隔。

常见数据库对象

1,:table:以行和列的形式存在,列就是字段,行就是记录。
2,数据字典:就是系统表,存放数据库相关信息的表,此部分程序员只可查看不可操作,由系统维护。
3,约束:constraint:执行数据校验的规则,用于保证数据完整性的规则。
4,视图:view:一个或者多个数据表里的数据的逻辑显示。视图并不存储数据只是显示数据。
5,索引:index:用于提高查询性能,相当于书的目录。
6,函数:function:用于完成一次特定的计算,具有一个返回值。
7,存储过程:proceduren:用于完成一次完整的业务处理,没有返回值,但可通过传参将多个值传给调用环境。
8,触发器:trigger:相当于一个时间监听器,当数据库发生特定事件后,触发器被触发,完成相应处理。
注:函数,存储过程,触发器不常用于JDBC编程。

mysql所支持的列的数据类型

整数类型:tinyint(1字节),smallint(2字节),mediumint(3字节),int(interger)(4字节),bigint(8字节)。
浮点类型:float/double 单精度/双精度浮点类型。
decimal(dec):精确小数类型,相对于float和double不会产生精度丢失的问题。
date:日期类型,不能保存时间。把java.util.Date对象保存进date列时,时间部分会丢失。
time:时间类型,不能保存日期。把java.util.Date对象保存进time列时,日期部分会丢失。
datetime:日期时间类型
timestamp:时间戳类型,会自动记下数据库计数器记录的值。
year:年类型,仅仅保存时间的年份。
char:定长字符串类型。
varchar:可变长度字符串类型。
binary:定长二进制字符串类型,以二进制形式保存字符串。
varbinary:可变长度二进制字符串类型,以二进制形式保存字符串。
二进制大对象:tinyblob(1字节),blob(2字节),mediumblob(3字节),longblob(4字节),用于存储图片,音乐等二进制数据,分别可存储255B/64KB/16MB/4GB
文本对象:tinytext(1字节),text(2字节),mediumtext(3字节),longtext(4字节),可用于存储超长长度的字符串,分别可存储:255B/64KB/16MB/4GB大小。
enum(‘value1’,’value2’…..):枚举类型,该列的值只能是enum后括号里多个值的其中之一。
set(‘value1’,’value2’…..):集合类型,该列的值可以是set后括号里多个值的其中之一。