源码

INSERT语句中的WHERE子句使用mysql / php


在Google上搜索后,我才知道,
我不能在我的INSERT查询中使用WHERE子句.
但我想在列“Book_4”上插入一个值,其中“Student_ID = 1”

我怎样才能做到这一点 ??
有没有替代方法呢?

会感激你的!

$Query = "INSERT INTO issued_books (Book_4) VALUES ('$IssuedBookNumber')" ;

编辑:
更多细节
使用插入查询,当我在我的表中的“Student_ID”列中插入一个值. Student_ID行(Student_ID除外)中的所有列在我的数据库中显示为0.
根据DB,我知道这意味着什么.
它可能是Null或数字0.
如果它是数字0,则应使用UPDATE语句更新它.
但每当我试图更新它时,它永远不会使用UPDATE语句更新.这就是我要问的原因!

P.S:所有列都具有数据类型INT.

希望你明白我想说的话:)

这是完整的代码.
假设:已创建具有值2的Student_ID.
IssuedBookNumber = 51

使用以上值:
Result =创建一个新行,除了列为“IssuedBookNumber”且值为51的列之外,所有列都为0.

虽然我想,结果应该是:
在行Student_ID = 2时,Book_4应为51.

关键是,当我在Student_ID上插入一个值时,所有其他列在同一行上变为0.但是当同一行中的任何列具有除0之外的任何数字时(当我在Student_ID中插入值时,该列自动出现在所有列上).更新查询将工作..!

$IssuedBookNumber = $_POST['IssuedBookNumber'];
     $Student_ID = $_POST['StudentId'];

     $FetchingQuery = "SELECT * FROM issued_books WHERE Student_ID='" . $Student_ID . "'";

     $RunFetchingQuery = mysql_query($FetchingQuery);


     while ( $row = mysql_fetch_array( $RunFetchingQuery ) ) {

          $Book_1 = $row[ 'Book_1' ];
          $Book_2 = $row[ 'Book_2' ];
          $Book_3 = $row[ 'Book_3' ];
          $Book_4 = $row[ 'Book_4' ];
          $Book_5 = $row[ 'Book_5' ];

          }

          if(!empty($Book_4))
          {
               $Update =  "UPDATE issued_books SET Book_4='$IssuedBookNumber' WHERE Student_ID= '$Student_ID'";
             mysql_query ($Update);
          }

          else
          {
               $AddQuery = "INSERT INTO issued_books (Book_4) VALUES ('$IssuedBookNumber')";
    mysql_query ($AddQuery);
          }
(0)

本文由 投稿者 创作,文章地址:https://blog.isoyu.com/archives/insertyujuzhongdewherezijushiyongmysql-php.html
采用知识共享署名4.0 国际许可协议进行许可。除注明转载/出处外,均为本站原创或翻译,转载前请务必署名。最后编辑时间为:9 月 26, 2019 at 02:57 上午

热评文章