質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

Q&A

解決済

2回答

1943閲覧

ユニークキーを更新するという事

ms5025

総合スコア292

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

0グッド

0クリップ

投稿2019/08/15 11:22

編集2019/08/15 15:49

質問したいこと

ユニークキーの値を更新する、というのは
ありなのでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

KOZ6.0

2019/08/15 13:58

ポピュラーかどうかかと問われれば、ポピュラーではないと思います。 で、忠告ですが、これ普通に守秘義務違反に相当するのでは? 身バレしないうちに店じまいしちゃったほうが良いと思いますよ。
gentaro

2019/08/15 15:03

守秘義務?契約上の話をしているんだろうし、民事なら訴えるのは自由だからそういう主張したいなら可能かもしれないけど、これで訴えて勝てる見込みはまずないと思いますけど…。 まぁ回答に対するコメント読んでると、この質問者的には「この処理はなしだ」「ポピュラーではない」以外の回答を望んでないように見えるんで、回答する気はしない質問だなぁ。(そうなってる背景を知る立場にない第三者に判断できるわけねーんだけど)
ms5025

2019/08/15 15:51

>、この質問者的には「この処理はなしだ」「ポピュラーではない」以外の回答を望んでない いえ違います。 ありならありと言ってもらえれば。 自分の経験上あまり遭遇したことのない作りだったので、 よくある事なのかどうか知りたかっただけです。
gentaro

2019/08/15 16:00

質問文消すのは良くないなぁ。 頻度として聞かれてるなら「ない」でしょう。最初からそういう作りにはしないだろうし。 最終的にその手段をとることが「あり」かと言われると、そこに至るまでの経緯がわからんと答えられないよね、という返事にしかならんと思います。
guest

回答2

0

ベストアンサー

その内容なら現在のステータスを示すカラムを持たせる方が自然な作り

ユニークキーをアップデートする、というのはポピュラーな事なのでしょうか?

初期開発時の仕様から外れて改修を重ねていくうちに一見しておかしいだろうという作りになるのもよくある話かなと
ただし金と時間が十分ならちゃんと設計し直すだろうから、お金と時間のどちらか一方でも渋るようなシステムだったんでしょう

投稿2019/08/15 12:30

hentaiman

総合スコア6421

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

プライマリーキーとユニークキーは違います。
整合性制約のタイプ

商品「ID」というより商品「コード」ではないですか?
商品コードが変わることはあるとするとそれは更新されることはあっても良いかもしれませんが、商品IDなりコードなりが更新前に登録されているデータとの整合性をどうとるかというのは考えなければなりません。
購入されるものでしたらメールなども送っているでしょう。
そのメール本文と実際に送った商品コードが違うことになる可能性はあります。
それで利用者が戸惑わなければ良いのですが。

それなら同じ商品でもコードが違えば別データとして登録したほうが良いとは思います。

投稿2019/08/15 11:45

m.ts10806

総合スコア80850

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ms5025

2019/08/15 11:59

ありがとうございます。 >登録されているデータとの整合性 私もちょっとこのシステムに戸惑っているのですが 上記で記入した通り この商品IDは他のどのテーブルとも紐付いていません 少し込み入ったことを書くと、既存サイトの商品コードというのは 別で存在します。 これは外部出品のためのコードを管理するテーブルです。 なので独立しているといえば独立しています。 ヤフーオークションIDのようなものです。 出品するまでIDがわからない、といった事です。
m.ts10806

2019/08/15 12:03

でも出品したらIDは決まりますし落札者および落札データと紐づきますよね。 そのIDとやらがどこかに表示されるなら余計にですが、表示されないとしても関係するテーブルすべてを更新しなければならなくなります。 たいていは外部キーをはっていると思いますので、更新できないのではないかと。
ms5025

2019/08/15 12:10

出品処理中にupdateされるわけですから、 その後落札データや落札者データ(今回そのデータはこちらのDBでは持たないのですが)とは 最終的にその更新された商品IDでリレーションが作られていく事になると思います 出品後に商品IDが更新されることはありません ただ出品処理中とはいえ、ダミーでユニークキーが作られてそれがupdateされる、という 作りは初めてなので戸惑っています。
m.ts10806

2019/08/15 12:27

そもそもですけど、他者が作ったものを他者に聞くのはちょっと微妙な気がします。 作った人に意図を聞くのが確実に理解が深まるのでは。 技術上可能である限りは「なし」と言い切るには材料が足りなさすぎます。
ms5025

2019/08/15 12:41

すいませんが質問に対する答え以外は望んでいません 申し訳ありません。 既にいない人のソースに手を加えていくことは システム開発ではよくあるシーンだと思うのですが。 色々な見解があると思いますし 技術的にできるからいい、と言う訳ではないと思います。 長くなりましたが、これに対する返信も望んでいませんので、 微妙だな、と思えばほおっておいてくださって結構です。
m.ts10806

2019/08/15 12:59

伝わっていないようなのでこれだけは認識しておいてください。 材料が不足しすぎている以上、また聞きの他者が「こうである」と判断するのは無理です。 想像でしか答えられないものですが、その様子では想像では納得しないと感じました。 自分で何とかするか、作った人に意図を聞くか、いずれかになります。 (本当に他者に見てほしいならお金払ってそのシステムの設計から全て見てもらうしかないので質問サイトに収まるものではありません)
m.ts10806

2019/08/15 13:01

これが業務に関するものなのであれば世界中からアクセス可能な質問サイトに投稿するのはどうだろうか、という疑問も1つ残しておきます。 もちろん質問した以上は解決するまで対応するのが質問者の責任ですが、 この内容で「質問に対する答え以外は望んでいない」とはかなり横柄だと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問