2012-04-10 5 views
1

フィールドがNULLでない場合のみフィールドを更新する方法を検討しています(それ以外の場合は、NULLは変更されていないフィールドを上書きします)。フィールドをnullにすることはできません。nullでないフィールドの更新のみ

私はCOALESCEとISNULLの両方を試しましたが、Dreamweaverのコーディングには使用されていないため、正しい方法で使用してはいけません。コードは次のとおりです:

<i>if ((isset($_POST["MM_update"])) && ($_POST["MM_update"] == "catalogue")) { 
    $updateSQL = sprintf("UPDATE catalogue SET catbox1=%s, catbox2=%s, catbox3=%s, catbox4=%s, catbox5=%s, catbox6=%s WHERE id=%s", 
         GetSQLValueString($_POST['catbox1'], "text"), 
         GetSQLValueString($_POST['catbox2'], "text"), 
         GetSQLValueString($_POST['catbox3'], "text"), 
         GetSQLValueString($_POST['catbox4'], "text"), 
         GetSQLValueString($_POST['catbox5'], "text"), 
         GetSQLValueString($_POST['catbox6'], "text"), 
         GetSQLValueString($_POST['id'], "int"));</i> 
+0

コードブロックを追加するために更新します。これを行うには、ブロックを選択し、ツールバーのコードブロックボタンをクリックします(これは '{}'のように見えます) –

+4

あなたはDreamweaverを使用しています。あなたの最初の問題があります。 – Confluence

+0

IS NULLのアプリケーションを表示できますか? – Starx

答えて

1

あなたのコードにはいくつかの誤りがありますが、これは誤植かもしれません。

  1. NO PHPラッパーを:あなたは、あなたがやろうとしているものの代わりにISNULL

基本的な方法は、この

UPDATE `tablename` SET `fieldName` = 'value' WHERE `fieldName` IS NOT NULL 
のようなクエリを使用している使用 IS NOT NULL部分
  • であなたのmysqlcodeが含まれています
  • 関連する問題