
SQL(Teradata版)(word文档良心出品).doc
56页- QQ咨询
- 微信客服
- 返回顶部
Teradata SQL 基础教程第一章数据定义语言 DDL(Data Definition Language)Databases数据库CREATE DATABASE创建数据库MODIFY DATABASE修改数据库定义DROP DATABASE删除数据库Users 用户CREATE USER创建用户MODIFY USER修改用户DROP USER删除用户Tables 表CREATE TABLE创建表ALTER TABLE修改表定义DROP TABLE删除表Indexes 索引CREATE INDEX创建索引DROP INDEX删除索引1.1 创建表CREATETABLE语句创建新表,定义新表的列、索引和其他属性新表创建后,表结构定义存放在 Teradata 的数据字典中 CREATE TABLE语句的语法如下:CREATE FALLBACK是Teradata 的一种数据保护机制,数据表的每一条记录都同时存放两份FALLBACK 使用 FALLBACK 保护机制NO FALLBACK 不使用 FALLBACK 保护机制日志有 BEFORE和 AFTER两种,分别保存了一条记录变化前后的状态用日志进行恢复 字段定义当系统出错时,可以利Teradata 的表可定义多达 256个字段,每个字段的定义包括如下五项:字段名 ,在同一数据库中必须唯一字段数据类型 例:CREATETABLE emp_data(employee_number INTEGER NOT NULL,last_name CHAR(20) NOT NULLWITH DEFAULT,street_address VARCHAR (30)TITLE ‘Address ’,city CHAR (15)DEFAULT‘Boise ’,state CHAR (2)WITH DEFAULT,birthdate DATEFORMAT’mm/dd/yyyy ’,salary_amount DEC(10,2),sex CHAR (1)UPPERCASE);字段数据类型属性 。 可定义如下属性:DEFAULT当字段无数据时用默认值来替代NULLWITH DEFAULT用字段的系统默认值替换NULLFORMAT缺省的显示格式TITLE缺省的列标题NOT NULL不允许空值CASESPECIFIC字母大小写敏感UPPERCASE字母大小写不敏感,内部用大写字母存储数据存储属性 包括下面各项:COMPRESS压缩值为 NULL的字段存储空间为0COMPRESS NULL同上COMPRESS 这实际上是一种所谓的参照完整性要注意的是,具有主键 (Primary Key) 约束的字段一定要定义为非空 (NOT NULL)另外 表级约束定义表级约束唯一性定义 [CONSTRAINT name][UNIQUE][PRIMARY KEY]参照定义 [CONSTRAINT name]FOREIGN KEY ( 在表级约束中,一个约束可以同时定义多个字段1.1.4索引定义PKPrimary Key主键PIPrimary Index主索引UPIUnique Primary Index唯一性主索引NUPI Non Unique Primary Index非唯一性主索引USIUnique Secondary Index唯一性次索引索引可以在 CREATETABLE时就加以定义, 同时还可以定义主键 如果创建表时不定义主索引,Teradata 就按照下面的规则缺省来建立主索引, 因为没有主索引的话, Teradata 就无法进行数据的分配没有在 CREATE TABLE时指定 PI:IF 定义了 PK, THEN PK = UPIELSE IF 存在定义为 UNIQUE的字段,THEN 第一个 NIQUE的字段为 UPIELSE 表中定义的第一个字段作为 NUPICREATE TABLE时指定了 PI:IF 定义了 PK,THEN PK作为 USI AND为每一个定义为 UNIQUE的字段建立一个 USI下面是一个比较复杂的创建表的例子,注意学习创建该表后用表达方式SHOWTABLE观察一下内部的CREATEMULTISETTABLE emp_data, FALLBACK, NO BEFORE JOURNAL, NO AFTER JOURNAL,FREESPACE = 30,DATABLOCKSIZE=10000 BYTES (employee_number INTEGER NOT NULL,department_number SMALLINTCONSTRAINT dep_checkCHECK (department_number BETWEEN 100 AND 999)REFERENCESDepartment (department_number),job_code INTEGER COMPRESS,last_name CHAR(20) NOT NULL,first_name VARCHAR (20),street_address VARCHAR (30) TITLE 'Address',city CHAR (15) DEFAULT'Boise'COMPRESS 'Boise',state CHAR (2) WITH DEFAULT,birthdate DATE FORMAT'mm/dd/yyyy',salary_amount DECIMAL。
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.