Teradata - BTEQ
BTEQ 实用程序是 Teradata 中功能强大的实用程序,可用于批处理和交互模式。它可用于运行任何 DDL 语句、DML 语句、创建宏和存储过程。BTEQ 可用于将数据从平面文件导入 Teradata 表,也可用于将数据从表提取到文件或报告中。
BTEQ 术语
以下是 BTEQ 脚本中常用的术语列表。
LOGON − 用于登录 Teradata 系统。
ACTIVITYCOUNT − 返回受上一个查询影响的行数。
ERRORCODE −返回上一个查询的状态代码。
DATABASE − 设置默认数据库。
LABEL − 为 SQL 命令集分配标签。
RUN FILE − 执行文件中包含的查询。
GOTO − 将控制权转移给标签。
LOGOFF − 从数据库注销并终止所有会话。
IMPORT − 指定输入文件路径。
EXPORT − 指定输出文件路径并启动导出。
示例
Following is a sample BTEQ script.
.LOGON 192.168.1.102/dbc,dbc;
DATABASE tduser;
CREATE TABLE employee_bkup (
EmployeeNo INTEGER,
FirstName CHAR(30),
LastName CHAR(30),
DepartmentNo SMALLINT,
NetPay INTEGER
)
Unique Primary Index(EmployeeNo);
.IF ERRORCODE <> 0 THEN .EXIT ERRORCODE;
SELECT * FROM
Employee
Sample 1;
.IF ACTIVITYCOUNT <> 0 THEN .GOTO InsertEmployee;
DROP TABLE employee_bkup;
.IF ERRORCODE <> 0 THEN .EXIT ERRORCODE;
.LABEL InsertEmployee
INSERT INTO employee_bkup
SELECT a.EmployeeNo,
a.FirstName,
a.LastName,
a.DepartmentNo,
b.NetPay
FROM
Employee a INNER JOIN Salary b
ON (a.EmployeeNo = b.EmployeeNo);
.IF ERRORCODE <> 0 THEN .EXIT ERRORCODE;
.LOGOFF;
上述脚本执行以下任务。
登录 Teradata 系统。
设置默认数据库。
创建一个名为 employee_bkup 的表。
从 Employee 表中选择一条记录以检查该表是否有任何记录。
如果表为空,则删除 employee_bkup 表。
将控制权转移到标签 InsertEmployee,该标签将记录插入 employee_bkup 表
在每个 SQL 语句之后检查 ERRORCODE 以确保语句成功。
ACTIVITYCOUNT 返回上一个 SQL 查询选择/影响的记录数。

