Teradata BTEQ
BTEQ 实用程序是 Teradata 中功能强大的实用程序,可用于批处理和交互模式。它可用于运行任何 DDL 语句、DML 语句、创建宏和存储过程。 BTEQ 可用于将数据从平面文件导入 Teradata 表,也可用于将数据从表中提取到文件或报告中。
BTEQ 条款
以下是 BTEQ 脚本中常用的术语列表。
-
LOGON : 用于登录 Teradata 系统。
-
活动计数 :返回上一个查询影响的行数。
-
错误代码 :返回上一次查询的状态码。
-
DATABASE : 设置默认数据库。
-
LABEL : 为一组 SQL 命令分配一个标签。
-
RUN FILE :执行文件中包含的查询。
-
GOTO : 将控制权转移到标签。
-
LOGOFF : 从数据库注销并终止所有会话。
-
IMPORT :指定输入文件路径。
-
EXPORT :指定输出文件路径并启动导出。
例子
以下是一个示例 BTEQ 脚本。
.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 表。
-
将控制权转移到 Label InsertEmployee,它将记录插入到employee_bkup 表中
-
在每个 SQL 语句之后检查 ERRORCODE 以确保语句成功。
-
ACTIVITYCOUNT 返回上一个 SQL 查询选择/影响的记录数。