以下は私のストアドプロシージャです
DROP PROCEDURE `addRecord`//
CREATE DEFINER=`root`@`localhost` PROCEDURE `addRecord`(company varchar(3000),name
varchar(3000),title varchar(3000),metro varchar(3000),city varchar(3000),email
varchar(3000),phone varchar(3000),industry varchar(3000))
BEGIN
insert ignore into record_data (company,name,title,metro,city,email,phone,industry)
values(company,name,title,metro,city,email,phone,industry);
END
私の主な仕事は、重複したエントリをチェックすることです。すべてのフィールドにいくつかの値を指定すると、正常に機能します。しかし、特定のフィールドをJavaからnullとして提供すると、重複を排除するのではなく、新しい行が挿入されます。 例えば
if i use following statement it dosent insert an entry if it exists
record.addRecord("abc", "a", "abc", "a","b","ostwal@gmail.com", "518- 220", "intl");
but if use
record.addRecord("abc", "a", "abc", null,null,"ostwal@gmail.com", "518- 220", null);
it inserts another row even if it already exists.