如何只插入一列而不将其他空格

时间:2014-08-06 14:01:42

标签: php mysql sql

我需要插入到数据库列而不覆盖其他列的值。继续我的PHP代码,我检查每一列是否必须用“si”覆盖或根本没有值..事情是只有最后一列获得值“si”而其他所有值都获得“null”值。我可以只插入一列而不会为空而不是'或''到其他列!

if($canSend){

            $queryUser="CREATE TABLE `$email` ( lun8semanauno VARCHAR(30), 
                            lun10semanauno VARCHAR(30), lun16semanauno VARCHAR(30),lun18semanauno VARCHAR(30), lun20semanauno VARCHAR(30));";
            $queryu=mysql_query($queryUser,$db); 
 }

//Ahora sumo uno al cupo si es que esta todo bien de arriba:    
    if($canSend && $horarios == "Lunes 8:30hs-Clase grupal"){
            $nuevocupolun8=$info['cuposLun8']+1;
            $queryRestar="UPDATE  `cupos` SET  `cuposLun8`='$nuevocupolun8'   WHERE  `cupos`.`cuposLun8` =  '$cupolun8';";
            $restar=mysql_query($queryRestar,$db);

            $queryAdd="INSERT INTO `lahiguera_hor`.`$email` (`lun8semanauno`) VALUES ('si');";
            $querya=mysql_query($queryAdd,$db);
        }
    if($canSend && $horarios == "Lunes 10hs-Meditacion"){
            $nuevocupolun10=$info['cuposLun10']+1;
            $queryRestar="UPDATE  `cupos` SET  `cuposLun10`='$nuevocupolun10'   WHERE  `cupos`.`cuposLun10` =  '$cupolun10';";
            $restar=mysql_query($queryRestar,$db);

            $queryAdd="$queryAdd="INSERT INTO `lahiguera_hor`.`$email` (`lun10semanauno`) VALUES ('si');";
            $querya=mysql_query($queryAdd,$db);
        }
    if($canSend && $horarios == "Lunes 16hs-Futuras mamas"){
            $nuevocupolun16=$info['cuposLun16']+1;
            $queryRestar="UPDATE  `cupos` SET  `cuposLun16`='$nuevocupolun16'   WHERE  `cupos`.`cuposLun16` =  '$cupolun16';";
            $restar=mysql_query($queryRestar,$db);

            $queryAdd="INSERT INTO `lahiguera_hor`.`$email` (`lun16semanauno`) VALUES ('si');";
            $querya=mysql_query($queryAdd,$db);
        }       
    if($canSend && $horarios == "Lunes 18hs-Clase grupal"){
            $nuevocupolun18=$info['cuposLun18']+1;
            $queryRestar="UPDATE  `cupos` SET  `cuposLun18`='$nuevocupolun18'   WHERE  `cupos`.`cuposLun18` =  '$cupolun18';";
            $restar=mysql_query($queryRestar,$db);

            $queryAdd="INSERT INTO `lahiguera_hor`.`$email` (`lun18semanauno`) VALUES ('si');";
            $querya=mysql_query($queryAdd,$db);
        }           
    if($canSend && $horarios == "Lunes 20hs-clase grupal"){
            $nuevocupolun18=$info['cuposLun20']+1;
            $queryRestar="UPDATE  `cupos` SET  `cuposLun20`='$nuevocupolun20'   WHERE  `cupos`.`cuposLun20` =  '$cupolun20';";
            $restar=mysql_query($queryRestar,$db);

            $queryAdd="INSERT INTO `lahiguera_hor`.`$email` (`lun20semanauno`) VALUES ('si');";
            $querya=mysql_query($queryAdd,$db);
        }

1 个答案:

答案 0 :(得分:0)

如果要将新行插入数据库并且不指定每列的值,则将设置默认值,如果允许该列,则设置为NULL,否则数据库将返回错误,并且不会将该行写入表中。

对于INT列设置默认值0,对于VARCHAR列,您可以将“空字符串”指定为默认值。一切都取决于您的数据库设计,以及您希望如何使用它。如果你不想在列中有任何东西,你可以允许它为NULL,并预设默认值为NULL。使用NULL作为空值是一个好习惯。