sql >> データベース >  >> RDS >> Mysql

順序付きリストをデータベースに保存する最良の方法は?

    「上に移動/下に移動」のような解決策を探しておらず、デフォルトでリストの一番下に追加する場合は、さらにいくつかのヒントがあります。

    特定の位置への新しい行の挿入は、次のように実行できます:(位置3に挿入)

    UPDATE usermovies SET order_number = ordernumber + 1 
       WHERE ordernumber > 3 and user_id = ?;
    INSERT INTO usermovies VALUES (?, 3, ?);
    

    同様の方法で削除できます:(位置6の削除)

    DELETE usermovies WHERE order_numer = 6 and user_id=?;
    UPDATE usermovies SET order_number = ordernumber - 1 
       WHERE ordernumber > 6 and user_id = ?;
    


    1. 制約の名前を知らずに外部キーを削除しますか?

    2. SQLSTATE [42000]:構文エラーまたはアクセス違反:1064 SQL構文にエラーがあります— PHP — PDO

    3. Oracle集合演算子

    4. MS AccessとMySQLの間でデータを同期するための最良の方法は何ですか?