如何通过提供输入来更新单个列。这是我的代码。
$sql="UPDATE isourcetest SET hostname='".$_POST['fname']."',
IP='".$_POST['Iname']."', location='".$_POST['Lname']."',
network='".$_POST['nname']."', OSversion='".$_POST['oname']."',
RAM='".$_POST['rname']."',CPUcore='".$_POST['cname']."',
CPUspeed='".$_POST['cpname']."',
Hardwaremodel='".$_POST['hname']."'
WHERE hostname='".$_POST['fname']."'";
但是如果我尝试更新列,则会更新整行。请建议一个解决方案。我是sql中的新手。
答案 0 :(得分:1)
您只需要编写一列的更新,例如hostname
:
$sql="UPDATE isourcetest SET hostname='".$_POST['fname']."'
WHERE hostname='".$_POST['fname']."'";
答案 1 :(得分:0)
使用 COALESCE()
$sql="UPDATE isourcetest SET hostname=COALESCE('".$_POST['fname']."', hostname),
IP=COALESCE('".$_POST['Iname']."', IP),.....etc
WHERE hostname='".$_POST['fname']."'";
让我知道它是否有效
答案 2 :(得分:0)
试试这个..
$sql="UPDATE isourcetest SET ";
if($_POST['fname'] != '')
$sql."hostname='".$_POST['fname']."',";
.
.
if($_POST['hname'] != '')
$sql."Hardwaremodel='".$_POST['hname']."',";
rtrim($sql,',');
$sql."WHERE hostname='".$_POST['fname']."'";
答案 3 :(得分:0)
下面的代码对我有用。
>cscript.exe /nologo test.vbs "3,8,1,2"
8
谢谢大家的支持。