2012-01-03 6 views
-1
UPDATE user_profiles SET xxx = xxx + 'tt00001' WHERE username = 'challapradyumna'; 

上記のクエリは、動作する必要がありません。テキストまたは文字列データを使用したMySqlの更新

数値データの場合、xxxは指定された値に追加されますが、スティングまたはテキストが指定されている場合、既存のデータの最後に追加されません。

+0

どうすればよいですか? –

+0

どうしますか?何が起こるはずですか? – Matschie

+0

数値データの場合は、指定された値を追加しますが、文字列データの場合は追加しません。 –

答えて

7

あなたの問題では、 '+'は2つの単語を組み合わせることはできません。あなたは「+」を使用している場合、それは+数学の代わりに、連結とさせていただきます

update user_profiles set xxx=CONCAT(xxx,'tt00001') where username='challapradyumna'; 

:(連結)を追加するために、2つの言葉は、あなたは次のようにクエリでCONCAT関数を使用している必要があります。 xxxに数値がある場合は、xxxで数学的に追加されます。 したがって、クエリでCONCATを使用することをお勧めします。

2

'+'演算子の代わりにCONCAT関数を使用する必要があります。 -

UPDATE user_profiles SET xxx = CONCAT(xxx, 'tt00001') WHERE username = 'challapradyumna'; 
関連する問題