Here is the script that creates the database.

create table object_attrib (obj_record_id INTEGER(7) AUTO_INCREMENT NOT
NULL, 
    PRIMARY KEY (obj_record_id),
    INDEX (rel_obj_int_id),
       FOREIGN KEY (rel_obj_int_id)
       REFERENCES obj_id_internals (obj_int_id)
    ON DELETE RESTRICT ON UPDATE CASCADE,
    INDEX (rel_os_id),
       FOREIGN KEY (rel_os_id)
       REFERENCES os_product (os_id)
    ON DELETE RESTRICT ON UPDATE CASCADE,
    INDEX (rel_db_id),
       FOREIGN KEY (rel_db_id)
       REFERENCES db_product (db_id)
    ON DELETE RESTRICT ON UPDATE CASCADE,
    rel_obj_int_id INTEGER(7) NOT NULL, rel_os_id INTEGER(7) NOT NULL,
    rel_db_id INTEGER(7) NOT NULL, obj_path VARCHAR(255) NOT NULL,
    obj_name VARCHAR(255) NOT NULL, obj_4n6_purpose BLOB NULL, 
    obj_info_source BLOB NULL, obj_comments BLOB NULL, 
    obj_md5_value VARCHAR(43) NOT NULL, obj_stat_dyn VARCHAR(8) NULL,
    obj_byte_size VARCHAR(16) NOT NULL, obj_category VARCHAR(255) NULL, 
    obj_rec_last_update DATE NOT NULL, obj_rec_orgin DATE NOT NULL) TYPE =
INNODB;

Here are the lines of perl code that I am using.

open(INPUT,$filename) || die "Check to see if $filename is a valid file.\n";
$sth = $dbh->prepare(q{INSERT INTO
object_attrib(obj_path,obj_name,obj_byte_size,obj_md5_value) VALUES
(?,?,?,?)}) || die $dbh->errstr;
while (<INPUT>)
{
   chomp;
   ($obj_path,$obj_name,$obj_byte_size,$obj_md5_value) = split /,/; 
   $sth->execute($obj_path,$obj_name,$obj_byte_size,$obj_md5_value) || die
$dbh->errstr;
}
close INPUT;
$dbh->disconnect;


Can someone tell me why I get the following error:

        Cannot add or update a child row: a foreign key constraint fails.

Thanks,

Brian Croniser

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to