在opencart2.0,我想创建一个ocmod扩展。在install.sql中,如何确定数据库字段是否存在?

时间:2017-07-18 03:04:18

标签: opencart ocmod

在opencart2.0中,我想创建一个ocmod扩展,在install.sql中,我需要修改数据库字段。当我修改数据库字段时,我需要确定该字段是否存在。我尝试了多种变体,但它们似乎都没有用。有任何想法吗?提前致谢。

这是我的install.sql,但是错误

DROP PROCEDURE IF EXISTS add_col_need_credit; 
DELIMITER $$ CREATE PROCEDURE add_col_need_credit() BEGIN IF NOT EXISTS(SELECT column_name FROM information_schema.columns WHERE table_name='oc_customer_group_description' AND column_name='need_credit' ) THEN ALTER TABLE  `oc_customer_group_description`  ADD  `need_credit` numeric(10,4) NOT NULL default 0; END IF;END$$ DELIMITER ; 
CALL add_col_need_credit();

2 个答案:

答案 0 :(得分:1)

explain()

答案 1 :(得分:1)

这不是错误,你可以在mysql控制台中使用它

DROP PROCEDURE IF EXISTS add_col_need_credit; 
DELIMITER $$ CREATE PROCEDURE add_col_need_credit() BEGIN IF NOT EXISTS(SELECT column_name FROM information_schema.columns WHERE table_name='oc_customer_group_description' AND column_name='need_credit' ) THEN ALTER TABLE  `oc_customer_group_description`  ADD  `need_credit` numeric(10,4) NOT NULL default 0; END IF;END$$ DELIMITER ; 
CALL add_col_need_credit();