MySQL的replace into分析
Jun 07, 2016 pm 05:12 PMreplace into和insert into是很相似的,唯一的差别就是使用replace into的时候会首先根据表的主键来判断是否存在与将要replace i
replace into和insert into是很相似的,唯一的差别就是使用replace into的时候会首先根据表的主键来判断是否存在与将要replace into的语句相同的记录,如果有的话,就先将旧记录删除,然后在插入新纪录。并且replace into执行后会返回一个数值,如果为1则表示执行的时候插入了一条数据,如果为2表示执行时删除了旧记录并且插入了新纪录。
虽然replace into在平常使用过程中不会出现什么严重的问题。如果我们要操作的表中有一个自增的主键,那么就要出问题了。首先,,因为新纪录与老记录的主键值不同,所以其他表中所有与本表老数据主键id建立的关联全部会被破坏。其次,就是,频繁的REPLACE INTO 会造成新纪录的主键的值迅速增大。总有一天。达到最大值后就会因为数据太大溢出了。就没法再插入新纪录了。数据表满了,不是因为空间不够了,而是因为主键的值没法再增加了。

人気の記事

人気の記事

ホットな記事タグ

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











Alter Tableステートメントを使用してMySQLのテーブルをどのように変更しますか?

Linuxでmysqlを実行します(phpmyAdminを使用してポッドマンコンテナを使用して/なし)

MACOSで複数のMySQLバージョンを実行する:ステップバイステップガイド

人気のあるMySQL GUIツール(MySQL Workbench、PhpMyAdminなど)は何ですか?

MySQL接続用のSSL/TLS暗号化を構成するにはどうすればよいですか?
