Php mysql更新查询(包含';where';语法)不起作用
我有这样一个mysql表(sql): 如果不存在,则创建表Php mysql更新查询(包含';where';语法)不起作用,php,mysql,Php,Mysql,我有这样一个mysql表(sql): 如果不存在,则创建表silver\u和\u pgm( \u metal\u namevarchar(30)不为空, \u bidvarchar(30)不为空, \u更改varchar(30)不为空 )ENGINE=MyISAM默认字符集=1 -- --表silver\u和\u pgm的转储数据 插入银色和pgm(\u金属名称,\u投标,\u变更)值 ('Silver\r\n'、'555'、'-0.22\r\n'), ('Platinum\r\n'、'555'
silver\u和\u pgm
(
\u metal\u name
varchar(30)不为空,
\u bid
varchar(30)不为空,
\u更改
varchar(30)不为空
)ENGINE=MyISAM默认字符集=1
--
--表silver\u和\u pgm的转储数据
插入银色和pgm(\u金属名称
,\u投标
,\u变更
)值
('Silver\r\n'、'555'、'-0.22\r\n'),
('Platinum\r\n'、'555'、'-9.00\r\n'),
(‘钯’、‘555’、‘0.00\r\n’),
('Rhodium\r\n','555','0.00\r\n')
我正在使用下面的代码更新一行,其中包含金属名称为Silver
<?php
$username = "root";
$password = "1234";
$database = "kitco";
$con=mysql_connect(localhost,$username,$password);
mysql_select_db($database) or die( "Unable to select database");
$bid = '101010';
$metal_name = 'Silver';
$query = "update silver_and_pgm set _bid='$bid' where _metal_name='$metal_name'";
//$query2 = "update silver_and_pgm set _bid='444'";;
echo $query."<br>";
$result = mysql_query($query);
if(!$result)echo "error";
?>
看起来数据库中的_metal\u名称有一个换行符,SQL查询显示Silver\r\n
看起来数据库中的_metal\u名称有一个换行符,SQL查询显示Silver\r\n
您的matel\u名称值包含\r\n作为matel\u名称的一部分,因此精确匹配的\u matel\u name='Silver'不会搜索要更新的特定记录,如果所有matel\u名称遵循相同的模式,您也可以使用类似的模式,请查看我的ans。您的matel\u名称值包含\r\n作为matel\u名称的一部分,因此精确匹配的\u matel\u name='Silver'不会搜索要更新的特定记录,如果所有matel\u名称遵循相同的模式,您也可以使用类似的,请查看我的ans。