SQL语言的分类和常见数据类型

SQL语言的分类和常见数据类型

SQL语言的分类

数据定义语言DDL

DDL主要是对数据库对象进行创建、修改、删除的操作(create, alter, drop),数据库对象包括数据库、表、视图、索引;

-- 创建表
create table table_name(
   列名 数据类型 [键约束],
   ......,
   [约束]
);

-- 修改表
alter table table_name add|modify|drop column_name;
   -- add|modify|drop 即向表中添加列、修改列、删除列

-- 删除表
drop table table_name;

数据操纵语言DML

DML主要是对数据库表 进行插入、修改、删除的操作(insert, update, delete);

-- 插入数据
insert into table_name(column_name1,column_name2....) values(data1,data2....);
  
   -- 通过其他数据表添加数据(查找的数据列要与插入的数据列匹配)
   insert into user(u_name) select p_name from person;
   
-- 修改数据
update table_name set column_name = 'data' [where condition];

-- 修改数据 merge (执行语境:向表1插入或更新数据,满足条件插入,不满足则更新)
merge [into] table1 using table2 on condition
   when matched then insert_clause
   when not matched then update_clause;

-- 删除数据
delete from table_name [where condition];

-- 删除数据 truncate
truncate table tabel_name;

数据查询语言DQL

DQL主要是对数据库表中数据查询的操作(select);

数据控制语言DCL

DCL主要是对数据库对象权限设置的操作授予权限、回收权限、提交、保存点、回滚、设置事务等(grant, revoke, commit, savepoint, rollback, set transaction);

常用数据类型

11g 支持23中数据类型,下面介绍常用的数据类型字符型,数字型,日期类型,其他类型;

字符型

字符型有 char, varchar,nchar,nvarchar,long 五种

数据类型 取值范围(字节) 说明
char 0 -2000 定长字符
nchar 0-1000 Unicode字符集定长字符
varchar 0-4000 可变字符
nvarchar 0-1000 Unicode字符集可变字符
long 0-2GB 可变字符(很少使用)

数字型

数字型有 number, float

数据类型 取值范围 说明
number(p,s) p最大精度38位(十进制) p代表精度,s代表保留小数点位数,用于存储定长整数和小数
float 最大精度126位(二进制) 精度范围是二进制的1-126,转换为10进制需要乘以0.30103

日期类型

日期类型分为date, timestamp

数据类型 说明
date 用来存储日期和时间( ? - 9999-12-31)
timestamp 存储日期和时间,比date更精确

其他数据类型

数据类型 取值范围 说明
blob 4GB 存储二进制
clob 4GB 存储字符串
bfile 大小与操作系统相关 把非结构化的二进制数据存储在数据库外的操作系统文件中

猜你喜欢

转载自www.cnblogs.com/f1ynn/p/11619461.html