将命名行类型用于 dbload 实用程序的过程与将其他复杂数据类型用于 dbload 的过程稍有不同,因为命名行类型实际上是用户定义的数据类型。
假定您具有名称为 person 的表,其包含一个带命名行类型的列。再假定 person_t 命名行类型包含六个字段:name、address、city、state、zip 和 bdate。
CREATE ROW TYPE person_t ( name VARCHAR(30) NOT NULL, address VARCHAR(20), city VARCHAR(20), state CHAR(2), zip VARCHAR(9), bdate DATE ); CREATE TABLE person of TYPE person_t;
要为命名行类型(或为任何用户定义的数据类型)装入数据
Brown, James|13 First St.|San Francisco|CA|94070|01/04/1940| Karen Smith|1820 Elm Ave #100|Fremont|CA|94502|01/13/1983|
dbschema -d stores_demo -u person_t > schema.sql dbschema -d stores_demo -t person > schema.sql
有关详细步骤,请参阅使用 dbschema 输出作为 DB-Access 输入。
FILE person.unl DELIMITER '|' 6; INSERT INTO person;
此 dbload 示例显示了如何将新数据行插入 person 表。该 INSERT 语句和 dbload 命令文件中的行数必须匹配:
FILE person.unl DELIMITER '|' 6; INSERT INTO person VALUES ('Jones, Richard', '95 East Ave.', 'Philadelphia', 'PA', '19115', '03/15/97');
dbload -d newdb -c uds_command -l errlog