PHP,yii框架在更新/插入时出错,选择工作正常

时间:2016-08-07 14:43:38

标签: php mysql yii windows-server

当我在共享mysql上使用db时,yii add / update工作正常,但是当我将数据库移动到本地mysql中的windows机器时,我得到错误:完整性约束违规:1048列'sp_1'不能为空。

完整错误 CDbException

CDbCommand无法执行SQL语句:SQLSTATE [23000]:完整性约束违规:1048列“sp_1”不能为空。执行的SQL语句是:UPDATE user_details SET id =:yp0,user_id =:yp1,country_id =:yp2,state =:yp3,{ {1}} =:yp4,city =:yp5,county =:yp6,address =:yp7,address2 =:yp8,zipcode = :yp9,lng =:yp10,lat =:yp11,zoom =:yp12,created =:yp13,last_login =:yp14,{{ 1}} =:yp15,phone_no =:yp16,fax_no =:yp17,paypal_email =:yp18,company_title =:yp19,company_description =: yp20,company_logo =:yp21,bill_name =:yp22,bill_address =:yp23,bill_country_id =:yp24,pro_cap_aerospace =:yp25,{{1 } =:yp26,pro_cap_helicopter =:yp27,pro_cap_defence =:yp28,pro_cap_other =:yp29,pro_cap_benefit_1 =:yp30,pro_cap_benefit_2 =:yp31 ,pro_cap_busi_1 =:yp32,pro_cap_busi_2 =:yp33,pro_cap_busi_3 =:yp34,pro_cap_busi_4 =:yp35,pro_cap_busi_5 =:yp36,{{1} } =:yp37,pro_cap_busi_6 =:yp38,pro_cap_busi_7 =:yp39,pro_cap_busi_8 =:yp40,pro_cap_busi_9 =:yp41,pro_cap_busi_10 =:yp42, pro_cap_busi_11 =:yp43,pro_cap_busi_12 =:yp44,pro_cap_busi_13 =:yp45,pro_cap_busi_14 =:yp46,pro_cap_busi_15 =:yp47,pro_cap_busi_16 =:yp48,pro_cap_busi_17 =:yp49,pro_cap_busi_18 =:yp50,pro_cap_busi_19 =:yp51,pro_cap_busi_20 =:yp52,pro_cap_busi_21 =:yp53,{ {1}} =:yp54,pro_cap_busi_company =:yp55,pro_cap_eq_1 =:yp56,pro_cap_eq_2 =:yp57,pro_cap_eq_3 =:yp58,pro_cap_eq_4 = :yp59,pro_cap_eq_5 =:yp60,pro_cap_eq_6 =:yp61,pro_cap_eq_7 =:yp62,pro_cap_eq_8 =:yp63,pro_cap_eq_9 =:yp64,{{ 1}} =:yp65,dp_third_party_certy =:yp66,dp_iso_certy =:yp67,dp_nadcap_certy =:yp68,dp_militry_certy =:yp69,dp_civil_certy =: yp70,dp_quality_org =:yp71,dp_qpl_certy =:yp72,dp_cont_org_1 =:yp73, dp_cont_org_2 =:yp74,dp_various_overseen =:yp75,dp_various_pcont =:yp76,dp_various_result =:yp77,dp_various_level =:yp78,dp_various_civil =:yp79,dp_various_date =:yp80,bd_iban =:yp81,bd_amount =:yp82,bd_bic =:yp83,bd_country_id =:yp84,{ {1}} =:yp85,bd_cin =:yp86,bd_swift =:yp87,bd_bank_name =:yp88,bd_bank_location =:yp89,sp_1 = :yp90,sp_2 =:yp91,sp_3 =:yp92,sp_4 =:yp93,sp_5 =:yp94,sp_6 =:yp95 WHERE {{ 1}}。sp_7 = 48

2 个答案:

答案 0 :(得分:0)

"专栏' sp_1'不能为空"。 你能否检查sp_1是否为非空列。 也许在旧环境中,sp_1的所有值都不为空。 但是在新环境中,您为它设置了一个空值。

答案 1 :(得分:0)

我最近也遇到过这个问题。您可以做的是解决您的问题,转到localhost/phpmyadmin并打开表格结构并单击sp_1的编辑按钮,然后选中空复选框,如下图所示。 phpmyadmin_screenshot