ここでは、私の表Iは、ITEM1、ITEM2、ITEM3として文字列に爆縮されたアレイの動的な値の単一のセットを格納するために使用MySQLの「ロック」テーブルのみ最大
`id` int(11) NOT NULL,
`notifyroles` varchar(50) NULL,
PRIMARY KEY (`id`)
ENGINE=MyISAM DEFAULT CHARSET=utf8
あります私がdbからデータを取り出すときに、それらの値を再び爆発させます。
ソフトウェアを初期化するときに、行ID 1を挿入し、使用するまでnotifyroles要素をNULLにしておきます。
これは、自動インクリメント機能を使用しないことを選択しました。私はINSERTを使用しません。常にID 1のUPDATEを使用してください。
これ以上の行をチェックし、それを切り捨てて、次のようになります:
テーブルをロックする方法はありますか?テーブルを1行以上にすることはできません。誰かが別の行をINSERTしようとすると失敗します。
ps。私は、MySQLの進化に伴い、今のところこのような方法があることを期待しています。
エラーをスローする場合は、 'BEFORE INSERT'トリガーで行うことができます(たとえば、[' SIGNAL'](https://dev.mysql .com/doc/refman/5.5/en/signal.html))を参照してください)。 – Andrew
本当にすばらしいアイデア、今、ボックスキリトの外で考えているthats、ニース:) –