原来的语句:
$array = get_array("select patient_name from patient where patient_id=$patientId");
$patientName = $array['patient_name'];
$sql = "insert into relationship (patient_id,doctor_id,patient_name,build_time,is_valid)
values ($patientId,$doctorId,$patientName,now(),$valid)";
字段都存在,出现Unknown column xx in 'field list' mysql。在未加入patient_name字段前可以成功插入。
原因:如果数据库字段是char或varchar类型,插入值为数字时不会有问题,如果插入的是字母或中文就不会被理解 为字符串(个人理解),出现上述错误
现在的语句:
给$patientName加上引号,就能被识别为字符串了
$sql = "insert into relationship (patient_id,doctor_id,patient_name,build_time,is_valid)
values ($patientId,$doctorId,'$patientName',now(),$valid)";
输出结果:insert into relationship (patient_id,doctor_id,patient_name,build_time,is_valid) values (111111111,222222222,'病人姓名',now(),1)
所以以后还是别偷懒了~
$sql = "insert into relationship (patient_id,doctor_id,patient_name,build_time,is_valid)
values ('$patientId','$doctorId','$patientName',now(),'$valid')";