Php 通过查找特定行用新值更新表
我有一个表,可以根据订单号添加信息。 因此,当我输入信息时,我会添加一些列名称作为数字。 然后用新值更新行 每次插入值时,我的表都会接受3个值Php 通过查找特定行用新值更新表,php,mysql,Php,Mysql,我有一个表,可以根据订单号添加信息。 因此,当我输入信息时,我会添加一些列名称作为数字。 然后用新值更新行 每次插入值时,我的表都会接受3个值 order number| total left | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9| ------------------------------------------------------------------------ 11 | 100 | a
order number| total left | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9|
------------------------------------------------------------------------
11 | 100 | a | b | c | d | e | f | 0 | | |
------------------------------------------------------------------------
12 | 10 | x | y | z | 0 | | | s | d | f|
-------------------------------------------------------------------------
当我尝试添加新列时,每一个其他值中新行的值都会变为null或0,这取决于它是int还是varchar
当我向订单号12插入3个值时,我希望更新该行中的最后0
(在本例中,4-5-6但我得到了7-8-9更新。)
那么,找到最后一行0的最佳方法是什么
(在这种情况下,第4列用于订单号12,并将s、d、f的新值插入4-5-6,而不是7-8-9
所以可能是这样的:
循环行,查找0,插入3行,断开
我看最后一列:
$NewColumnNameKoliAdet=$LastColumnName+1;
$NewColumnNameMusteri=$LastColumnName+2;
$NewColumnNameTarih=$LastColumnName+3;
然后我添加列并更新表
$Query="ALTER TABLE `koli_stok_hareketleri`
ADD `$NewColumnNameKoliAdet` INT(11) NOT NULL AFTER `$LastColumnName`,
ADD `$NewColumnNameMusteri` VARCHAR(100) NOT NULL AFTER `$NewColumnNameKoliAdet`,
ADD `$NewColumnNameTarih` VARCHAR(100) NOT NULL AFTER `$NewColumnNameMusteri`;";
$Query="UPDATE koli_stok_hareketleri SET kalan_koli=kalan_koli-
'$Uretilen_Koli',
`$NewColumnNameKoliAdet` = '$Uretilen_Koli',
`$NewColumnNameMusteri` = '$Musteri_ismifromrow',
`$NewColumnNameTarih` = '$Now'
WHERE koli_ismi ='$Koli_IsmifromRow' AND
koli_parti_no='$Parti_NofromRow'";
所以问题是,它会自动为每行添加三个值,但当我更新时,我需要从第4列而不是第7列更新订单号12。您的sql是什么?请提供。您是否尝试更改表结构或插入值?请尝试组织您的问题。我不明白您尝试做什么,以及您尝试做了什么r…主要问题是什么?请更新。嗨,Helle,我更新了一些信息。谢谢!你能描述一下这个想法的目的是什么吗?我感觉你在错误的方向上运行。你为什么要更改数据库?数据库大部分时间应该保持静态…请尝试提供一个例子,说明你的输入是什么,你的ou是什么tput expaction是什么,以及到底发生了什么…现在还不清楚您试图做什么。这种问题是非常糟糕的模式设计的症状。停下来。看看规范化。是的!我想我应该改变我设计表的方式:)规范化会起作用。