回答編集履歴

5

tuiki

2016/11/22 05:09

投稿

hiim
hiim

スコア1689

test CHANGED
@@ -32,4 +32,6 @@
32
32
 
33
33
 
34
34
 
35
+ ※name以外がプライマリキーでかつAUTO_INCREMENTを利用、nameがユニークキーだった場合、REPLACE 構文の実行後にプライマリーキーの値が変わってしまう点は注意
35
36
 
37
+

4

追記

2016/11/22 05:09

投稿

hiim
hiim

スコア1689

test CHANGED
@@ -15,3 +15,21 @@
15
15
 
16
16
 
17
17
 
18
+
19
+ ###追記
20
+
21
+
22
+
23
+ ```
24
+
25
+ replace into tablename (name,picture) values ('name','picname');
26
+
27
+ ```
28
+
29
+ とするともし既に'name'が存在するとその絡むを削除して、上記文がinsertされる、
30
+
31
+ そしてもし'name'が存在しなければinsertされる。
32
+
33
+
34
+
35
+

3

修正

2016/11/22 05:01

投稿

hiim
hiim

スコア1689

test CHANGED
@@ -14,14 +14,4 @@
14
14
 
15
15
 
16
16
 
17
- ###追記
18
17
 
19
-
20
-
21
- ```
22
-
23
- replace into tablname set column1=value,column2=value where name='name';
24
-
25
- ```
26
-
27
- のような形式、idを使う事はないかと思います。

2

修正

2016/11/22 04:53

投稿

hiim
hiim

スコア1689

test CHANGED
@@ -1,3 +1,5 @@
1
+ PHPMyadminという事ですのでmysqlとして回答。
2
+
1
3
  同じ名前が登録されていれば、updateという事はテーブルに同じ名前のレコードが複数存在する事はないという事になると思いますので、名前カラムはpkもしくはユニークという事ですね?(質問にidというカラムがでてきているのでおそらく名前カラムはユニーク扱い?)
2
4
 
3
5
 

1

追記

2016/11/22 04:51

投稿

hiim
hiim

スコア1689

test CHANGED
@@ -9,3 +9,17 @@
9
9
 
10
10
 
11
11
  [replace](https://dev.mysql.com/doc/refman/5.6/ja/replace.html)
12
+
13
+
14
+
15
+ ###追記
16
+
17
+
18
+
19
+ ```
20
+
21
+ replace into tablname set column1=value,column2=value where name='name';
22
+
23
+ ```
24
+
25
+ のような形式、idを使う事はないかと思います。