MS AccessシステムをPHP PDOを使用してmySQLシステムに移行します。 PHPがAccessテーブルの一部のレコードを読み込むのを止めるまで、すべてがOKです。このテーブルには、Long Integerデータ型のIDフィールドがあります。理由はわかりませんが、IDは0から16949までで始まり、36573745にジャンプして36581986で終了します.PDOが読み取っていないこれらの高い数値は、理由を理解できません。MSアクセスエラー "更新可能なクエリを使用する必要があります"更新時
これを回避するには、これらの数値を更新して、より低いIDの通常のシーケンスを続行しようとしています。しかし、アクセスは私のクエリを理解することができず、どのように実行するのかわかりません。
これは、このエラーUperation must use an updatable query
私を示していますクエリ
UPDATE Validador_Manut SET ID = (
SELECT (Max(ID) + 1) FROM Validador_Manut WHERE ID < 100000
) WHERE ID > 100000
です。
PDOはおそらく、INT値までご大きな数字を丸めています。既にPDOを試しているので、[PDOのbind param](http://www.php.net/manual/en/pdostatement.bindparam.php)を見てください。 (たとえそのクエリが準備された文のようには見えないとしても) – chapman84
@ chapman84私はPDOが私を欺いていると思う。 – DontVoteMeDown
整数の代わりに文字列としてそのparamをバインドし、クエリが機能するかどうかを確認することができます。それが起こっているのかどうかは分かります。 – chapman84