当我在共享mysql上使用数据库时,yii添加/更新工作正常,但当我将数据库移动到本地mysql中的windows计算机时,我得到错误:违反完整性约束:1048列sp_1'不能为null。
完全错误CDb异常
CDbCommand无法执行SQL语句:SQLSTATE[23000]:违反完整性约束:1048列"sp_1"不能为null。执行的SQL语句为:UPDATE user_details
SET id
=:yp0,user_id
=:yp1,country_id
=:yp2,state
=:yp3,city
=:yp4,county
=:yp5,address
=:yp6,address2
=:yp7,zipcode
=:yp8,lng
=:yp9,lat
=:yp10,zoom
=:yp11,created
=:yp12,last_login
=:yp13,phone_no
=:yp14,fax_no
=:yp15,paypal_email
=:yp16,CCD_16 19=:yp17,company_description
=:yp18,company_logo
=:yp19,bill_name
=:yp20,bill_address
=:yp21,bill_country_id
=:yp22,pro_cap_aerospace
=:yp23,pro_cap_helicopter
=:yp24,pro_cap_defence
=:yp25,pro_cap_other
=:yp26,pro_cap_benefit_1
=:yp27,pro_cap_benefit_2
=:yp28,pro_cap_busi_1
=:yp29,pro_cap_busi_2
=:yp30,pro_cap_busi_3
=:yp31,pro_cap_busi_4
=:yp32,pro_cap_busi_5
=:yp33,pro_cap_busi_6
=:yp34,pro_cap_busi_7
=:yp35,pro_cap_busi_8
=:yp36,pro_cap_busi_9
=:yp37,pro_cap_busi_10
=:yp38,pro_cap_busi_11
=:yp39,pro_cap_busi_12
=:yp40,pro_cap_busi_13
=:yp41,pro_cap_busi_14
=:yp42,pro_cap_busi_15
=:yp43,pro_cap_busi_16
=:yp44,pro_cap_busi_17
=:yp45,pro_cap_busi_18
=:yp46,pro_cap_busi_19
=:yp47,pro_cap_busi_20
=:yp48,pro_cap_busi_21
=:yp49,pro_cap_busi_company
=:yp50,pro_cap_eq_1
=:yp51,pro_cap_eq_2
=:yp52,pro_cap_eq_3
=:yp53,pro_cap_eq_4
=:yp54,pro_cap_eq_5
=:yp55,pro_cap_eq_6
=:yp56,pro_cap_eq_7
=:yp57,pro_cap_eq_8
=:yp58,pro_cap_eq_9
=:yp59,dp_third_party_certy
=:yp60,dp_iso_certy
=:yp61,dp_nadcap_certy
=:yp62,dp_militry_certy
=:yp63,dp_civil_certy
=:yp64,dp_quality_org
=:yp65,dp_qpl_certy
=:yp66,dp_cont_org_1
=:yp67,dp_cont_org_2
=:yp68,dp_various_overseen
=:yp69,dp_various_pcont
=:yp70,dp_various_result
=:yp71,dp_various_level
=:yp72,dp_various_civil
=:yp73,dp_various_date
=:yp74,bd_iban
=:yp75,bd_amount
=:yp76,bd_bic
=:yp77,bd_country_id
=:yp78,bd_cin
=:yp79,bd_swift
=:yp80,bd_bank_name
=:yp81,bd_bank_location
=:yp82,sp_1
=:yp83,sp_2
=:yp84,sp_3
=:yp85,sp_4
=:yp86,sp_5
=:yp87,sp_6
=:yp88,sp_7
=:yp89,sp_8
=:yp90,sp_9
=:yp91,sp_10
=:yp92,sp_11
=:yp93,certification
=:yp94,certification_type
=:yp95其中user_details
。id
=48
"列sp_1'不能为null"。请检查sp_1
是否为非空列。也许在旧环境中,sp_1
的所有值都不为空。但在新环境中,您为其设置了一个null值。
我最近也遇到过这个问题。您可以做的是解决您的问题,即转到localhost/phpmyadmin
并打开表的结构,然后单击sp_1
的编辑按钮并选中空复选框,如下图所示。phpmyadmin_screenshot