-2

データベースに挿入できる次のストアドプロシージャがあります。重複したエントリが入力されないようにストアドプロシージャを変更したいと思います。重複をチェックするために使用する列は、Material_NameとMaterial_Data.howです。 SPを変更する必要がありますか?誰か助けて。

CREATE PROCEDURE `sp_upload_file`(IN Training_Id INT,IN filename VARCHAR(200), IN path VARCHAR(200),IN materialdata MEDIUMBLOB)
BEGIN
INSERT INTO `training_material`
    (`Training_Id`,
    `Material_Name`,
    `Material_Path`,
    `Material_Data`,
    `Created_Date`,
    `Modified_Date`)
 VALUES 
    (Training_Id,
    filename,
    path,
    materialdata,
    NOW()
    ,NOW());

END$$

DELIMITER ;
4

1 に答える 1

2

UNIQUE 制約を作成してテーブルを変更し、

ALTER TABLE training_material
ADD CONSTRAINT trainmat_UQ UNIQUE(Material_Name, Material_Data)
于 2013-01-28T12:41:42.047 に答える