有些操作 沒有數(shù)據(jù) 顯示不出來,這樣看不出來 實際效果。所以 需要向數(shù)據(jù)庫中 導(dǎo)入數(shù)據(jù)。
一開始拿到的是個sql文件,一心想著:只要導(dǎo)入sql文件,數(shù)據(jù)庫中就應(yīng)該有數(shù)據(jù)了吧。
但是,導(dǎo)入sql文件時,遇到如下錯誤。
[SQL] Query dailyfresh start
[ERR] 1452 - Cannot add or update a child row: a foreign key constraint fails (dailyfresh.df_goods_sku, CONSTRAINT df_goods_sku_type_id_576de3b4_fk_df_goods_type_id FOREIGN KEY (type_id) REFERENCES df_goods_type (id))
錯誤原因:插入語句 插入順序紊亂。
當(dāng)仔細看了sql文件中的insert語句時,并比對 模型類中定義的表結(jié)構(gòu)后,發(fā)現(xiàn):文件中的sql語句,不是按照:先獨立的主表 ->后 有外鍵參照的表 這樣的順序,插入記錄的。
所以出現(xiàn)上述報錯原因 。
解決方法:按照 外鍵參照關(guān)系 一個表一個表的 進行插入就可以了。比如按以下順序 進行數(shù)據(jù)的插入:
df_goodsdf_goods_typedf_goods_skudf_index_bannerdf_index_type_goodsdf_index_promotion