結局開発で最も大切なのはテーブルの正規化と制約 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
テーブルを正規化したり
適切なデータ型を決定したり
制約を定義するといったことが
開発の中で最も大切
炎上してるプロジェクトは
必ずと言って良いほど
これらを軽視している 整理整頓、ちゃんとしようってことなんだな。
炎上なんてのは当たり前のことが当たり前にできてないってことがほとんどで。 DB側で管理できることは
DB側でやれってことでいいの? そんな話じゃないよ
テーブルを正規化したり
適切なデータ型を決定したり
制約を定義する
というのをやっておけば
そうそう炎上なんかしない
という話 そんな馬鹿なと思うかもしれないけど
意外と事実だよ > テーブルを正規化したり
> 適切なデータ型を決定したり
> 制約を定義する
なんて基本中の基本で、それでも炎上するプロジェクト多数なんだが >>7
そんなことはない
炎上するプロジェクトの大半は
テーブルを正規化したり
適切なデータ型を決定したり
制約を定義する
というのをやってない 大半: 全体の半分以上
(全体 - 大半)は
テーブルを正規化したり
適切なデータ型を決定したり
制約を定義する
事をしてても炎上してるって事だね
定量的なデータあるの? 大半って何% 母集団は何? >>8
だよね
原因と結果を混同してたら根本原因にはたどり着けない デスマ案件の原因Top3
・低品質な要求分析・要件定義
・最初から無理めなスケジュール・予算
・わがまま傲慢顧客
次点
・顧客担当者の社内調整力不足
・PMの調整力・交渉力不足
次々点 (※マネジメントが優秀ならこれらの理由だけで炎上する可能性は小さい)
・既存システム・連携システムの負の遺産
・エンジニアの技術力不足
・採用技術の不確実性 テーブルを正規化したり
適切なデータ型を決定したり
制約を定義する
というのを
A.やっていて炎上するプロジェクト
B.やっていなくて炎上するプロジェクト
C.やっていて炎上しないプロジェクト
D.やっていなくて炎上しないプロジェクト
の4つに分けたら
A<Bであるし
C>Dである >>13
それは幻想
現実には
テーブルを正規化したり
適切なデータ型を決定したり
制約を定義する
というのを
やってるかやってないかで
簡単に決まってしまう テーブルを正規化する
適切なデータ型を決定する
制約を定義する
以後この3つを「正規化など」って俺は書くね 正規化などと炎上プロジェクトの間には
ビックリするほど関係性がある
嘘だと思うなら調べてみるといい 肌感覚だけどそりゃそうだろうね。
正規化をまじめに考える余裕もないような現場なら炎上しやすいってか炎上中というか。 結局開発で最も大切なのは仕様
上手くいかないのは仕様が滅茶苦茶な時
仕様が糞だと設計もコードも乱雑になり糞になる
客先常駐やSIerはその場しのぎの糞コードばかり書くことになる
基本自社開発な企業行くと、意味不明な仕様もなくなって楽になった >>18
正規化などを「余裕のある時にやればいいこと」と位置づけた時から炎上は始まってる 正規化・適切なデータ型選択・制約の定義をすれば炎上しないと思ってるなら
自分でそれをやればいいと思うんだけど何でやらないの? >>22
君がやってみれば?
実際に正規化などが行われていない
炎上プロジェクトでさ
上の方でも書いたけど「正規化など」というのは
1.テーブルを正規化する
2.適切なデータ型を決定する
3.制約を定義する
の3つね >>23
>実際に正規化などが行われていない
行われてないって何で他人事なの?
行われてないなら行えばいいじゃん >>25
3つとも基本だからね
当たり前にやってるよ
君がやらない理由を教えてよ >>27
そっか。じゃまず許可出してもらえるように頑張らないといけないね
自分で正規化などをやる立場になったら
そういう基本的なことすら行われない原因が何なのか
もう少し違う視点から見れるようになると思うよ データベースのデータ設計を変更するのは相当広い範囲に影響するからね。
後から入ったやつが簡単にどうこうできることじゃない。
だからこそ大事だという言い分はそんな間違ってはいない。 >>28
「締切に間に合えば好きにしてもらっていいよ」
と言われることもあるし
許可が出ることもあるし
1人プロジェクトなら当然やってる
もちろん
ダメだと言われることもある 確かに正規化とか出来てないと後の辻褄合わせが無茶苦茶大変だわw
データのライフサイクルなんかも全く考慮されてないしw 大企業でもデータを統括する部署なり役職なり全然ないからなw
データベースを単なるデータの入れ物ぐらいにしか思っていない奴がやりたい放題だよw 以前関わったプロジェクトで10個ぐらいのフィルードの複合キーを主キーにしてるテーブルをみた時はさすがに設計した奴死ねと思ったわ
主キーが
都道府県コード + 市区町村コード + 支店コード + 部門コード + ラインコード + 品種コード + グループコード + 製品コード + 製造年月 + 連番
みたいな感じだった
あぁ、こりゃ炎上するわと納得した >>36
クエリかけられる excel と考えればそんなに間違ってもいないかな。
excel だろうとなんだろうと正規化は意識した方が良い。 なるほど確かにエクセルだと、その種の制約かけるのが相当めんどい。 お前が関わったプロジェクト全般てなだけで開発全般とは言えないな。 >>39
いい例だと思うんだけど、それは正規化されてないのが原因じゃないんだよね
そんな主キーでもきちんと正規化されてる場合だってあるから
正規化はたいていの人が少し慣れればほとんど意識せずに出来るようになるけど
それと優れたデータベース設計が出来るかどうかとは全く別の話
だから「データベース設計≒テーブルの正規化」的な考え方の人が
設計してるうちは炎上の可能性は下がらない気がする 正規化ゆうても第1から第5まであるわな
さすがに第5までやるのもやりすぎなんで、ほとんど第3までやろうけど
というか第3正規化できてないと大概炎上するわな 正規化などが行われていなければ
ほぼ確実に炎上するとすれば
結局開発で最も大切なのは正規化などだよ え?なに?正規化することで炎上が解決した事例でもあんの?
ないじゃんwww >>48
重要なのは正規化することで炎上しないのが
本当かってことでしょう?w >>49
正規化などが行われていない炎上プロジェクトで
「正規化などをやるべきだ」と言った人がいるとして
その人の意見は通るかな? >>50
正規化してないことが炎上の真の原因だと納得させられるなら
その人の意見は通るでしょ
みんな炎上なんて嫌なんだから
顧客ID, 氏名, メールアドレス, 郵便番号, 都道府県, 市町村, …
↑住所のところが正規化されてないけど
こういう顧客テーブル使ってても炎上とは無縁の会社いくつも知ってるよ
炎上防ぐために正規化する? >>53
そう主張できる論拠がないからね
少なくとも今のところこのスレでは
だから誰も納得しない >>56
それ論点ずらしって言うんだよ
「炎上するのは正規化してないから」や「正規化すれば炎上の可能性が小さい」という主張に対する反証を出してるだけ
俺が正規化するかどうかとは何の関係もない
都合が悪くなると論点ずらしするのはよくないね
もっと考えないと >>54
市町村合併とかの時に大変そうだな
まぁもう暫くはないだろうけど
あ!金もらえるなら別に大変でもいいか
タダでやれとか言われたら涙目だけど そもそも正規化が何たるかを知らない
知った上で正規化崩ししているなら話はまた別 >>59
それは正論
「敢えて正規化を崩している」とか
「敢えて制約を外してる」とかなら
それはそれでok >>57
それは話が逆
正規化などは「当然やるべきこと」だよ
説明が必要だとすれば
敢えて正規化を崩したり
敢えて制約を外したりする場合だよ >>62
正規化などが行われていない炎上プロジェクトで
「正規化などをやるべきだ」と言った人がいるとして
その人の意見は通るかな? 炎上してるプロジェクトで、設計の初期段階まで戻って正規化をやり直す時間なんかくれるわけないわな
つまり、進むも地獄、戻るも地獄の状況で、地獄の深みに突き進んでいくしかないわけさ
まさに、デスマーチ
笑いながらウンコ漏らすってもんよ >>61
それ正規化しないと炎上しやすいっていう主張の根拠になってるの?
ループしすぎじゃないか? >>65
「正規化しないと炎上しやすい」っていう主張に根拠が必要とは思えん 炎上してる場合、テストを書こうだってほとんど通らないよw
ただひたすら言われたことやるだけw >>63
コーディング規約がない炎上プロジェクトで
「コーディング規約を作るべきだ」と言った人がいるとして
その人の意見は通るかな?
つまり、あんたが言いたいことはどういうこと? 上がポンコツだとなにやっても無駄無駄無駄ァッ!って事じゃないかと >>67
少しづつテストを入れるなら
普通に通ると思うよ
>>68
少しづつコーディング規約を適用していくなら
普通に通ると思うよ
>>69
それはある 本当に上が体育会系の脳筋のごますりと金勘定しか興味ない奴だと大変だわ >>71
そんな連中ばかりでも
正規化などの「当然やるべきこと」を
普通にやらせてくれるなら
まだマシだけどね 「テーブル数が増えると管理が面倒だから〜」確実にあんたが面倒にしている 正規化するとパフォーマンスに影響があるから
崩しましょうとか、正規化する前にやるなよw >>70
> 少しづつテストを入れるなら
> 普通に通ると思うよ
あんたテスト書いたこと有る?
テストの量は実装コード以上になる上に
炎上しているようなものは実装コードも
テスト可能になってないのだから、
ようするに工数が今の3倍ぐらいになるってことだよ
テストなんてのは最初から書いて
テスト可能なように設計しておくのが前提 どの工程の設計であろうと、「やる前によく考えろ」の一言に尽きる
期間がない、予算がない、で取り敢えずのその場しのぎの設計が多い
結局いい加減な設計は後で何十倍にもなって自分に返ってくるってのにな
何事も初動が大事 >>77
100%は目指してないが
意味があるぐらいは目指すだろ
たった一個書いて終わりか? 正規化とか知らない素人同然のなんちゃってSEが設計してるからどうしようもない
未熟者が上流に従事することなど医療や建設の業界ではあり得ないことだが、それが
平然とまかり通るのがIT業界
目に見える形での直接的な人命への影響がないから見過ごされているが、実は人の体力ばかりか精神をも蝕み最悪殺すこともあるというのに >>79
工数が増大しないように要所要所に入れればいいじゃん
>>80
ほんそれ >>81
工数を増やさずに入れるのは無理
だからちょっとだけ入れて満足しましょうって話をしたんだろう?
テストがあればデグレが防げます
ただしテストは全体のごくわずかしか入れてません。
じゃ意味が無いって言ってるの とくにテストを意識していないコードにテストを注入していくのは
かなり至難の業なわけ。
不可能ではないが、企業としてよっぽど本気になることがないとまず無理。 おっと乗り遅れたか
第1正規化は当然やるとして
第3正規化は基本やる必要ないぞ >>86
どこまで正規化するかは状況しだいかもしれないけど
全くやらないのは論外だね ちょっとまとめてみた
1.テーブルを正規化する
2.適切なデータ型を決定する
3.制約を定義する
この3つが実施されなければ炎上して当然
実施されなければ炎上して当然の重要事項であるから
「この3つを実施したい」と主張する側に説明責任は無く
「この3つを実施させない」と主張する側に説明責任はある
実施されなけれは炎上して当然の重要事項であるから
「テーブルが増えるから」なんて理由で実施させないのは
あってはならない
正規化した上で何か事情があって正規化を崩すのは構わない
それと正規化を実施しないというのは話が別
どこまで正規化するのかは状況しだいかだが
全く実施しなければ炎上して当然 >>1の範囲なら別にかまわないと思う
(マ板でやれという意見の人もいるかもしれない)
具体的な話をしたければ、データベース板でどうぞ 開発でDBが絡まない案件の方が少ない気がするな
それに向こうはここより過疎だし 正規化しないと炎上するだろうって事は分かるが
炎上してるからって正規化してないとは限らないと思う >>98
もちろん正規化などをやってるプロジェクトでも炎上することはある
だけど
正規化などをしていなければ炎上して当然
これも仰る通り >>99
テストをしていなければ炎上して当然だし、
コードレビューをしていなければ炎上して当然だし
コード設計をしていなければ炎上して当然だし
SEが役立たずだと炎上して当然だが? まあ、要するに
酒飲むのと残業が好きな連中が集まると大抵炎上する >>100
テストしてなければ簡単に潰せるバグが大量に出るね
だけど意外と影響は小さい
「技術者への不信感が強くなる」というのが最も問題
コードレビューは「やらない方がマシ」というプロジェクトが結構ある
それから「コード設計」って何? 正規化することより正規化されていないレガシーDBをどうにかするテクニックを研究した方が有益
ゼロから正しく作るのは簡単
困るのはいつも引き継いだ時だ 正規化をしていなくても別に後から修正すればいいだけだし、
それよりもコードだよ。
一旦書いてしまったら全部書き直しになってしまう >>103
それはその通りだね
旧システムを新システムに置き換える仕事をやってる時に
正規化しない理由が「データ移行が大変だから」なんて言われた日には・・・
データ不整合が起きてる旧システムのデータを
そのまま新システムのデータベースにブチこむという決断が行われましたと >>107
うちも今まさにそれやってるわ
というかDB担当が使えねえカスで非正規のテーブル増やしやがったからもっと酷い
5年10年も勤めてる奴らなのに呆れ果てるわ
愚痴すまんな >>110
( TДT)
大変やね
俺は「金が出ればホワイト。残業代が出るからホワイト」ってアタマの中で唱え続けて乗りきった >>106
いやいや
本番運用開始したらDB構造を変えるのに比べればプログラムを変えるほうが簡単
DBは複数のシステム/アプリケーションから使われてることがほとんどだから >>112
「コード設計」でググったからわかったのだが
ID:0eH/9F76が言ってる「コード」ってソースコードのことじゃないんだわ せめてモデル層をクラスで集約出来ていれば正規化して正規化する前の形をSQL-VIEWで復元してあげればわりとやりやすくはなるかも Railsとかのフレームワークを使っていれば
普通に設計しても正規化状態になるので
フレームワークを導入しなければ炎上するって
言ったほうが良いと思う
もちろんオレオレフレームワークは
実績が少ないので意味がない フレームワークを導入してないところは
時代が20〜30年ぐらい遅れてると思う。
結局開発で最も大変なのは
最新技術を取り入れていくことかな 開発で最も大切なのは
1.テーブルを正規化する
2.適切なデータ型を決定する
3.制約を定義する
この3つ ローテク極めていくほうがだいたい早い
30年前のCOBOLでもやってること大差なし ようするにDRYだよ
1つの事実(知識)を1つの場所に
正規化はDRYのサブセット > 1.テーブルを正規化する
> 2.適切なデータ型を決定する
> 3.制約を定義する
まぁ、それができてたってアンチパターンにははまる可能性はあるわけで。
ということで、知らなかった人は書籍「SQLアンチパターン」を読むといい。
https://www.oreilly.co.jp/books/9784873115894/ >>123
読むの面倒だからトップ3くらい紹介してくれない? >>124
こういう奴を切っていくのが、プロジェクトを炎上させないコツ。 >>125
テーブルの正規化以前に人に依存していると言う主張してか?
やはりスレタイは正しく無くて、>>1のようなカスを排除する事が炎上防止の最善策 プロジェクトが炎上する要因は複数ある。
そこから合意してかないといけないのか? 「最も大切」というお題だから
自分で設定したお題を忘れてもらっちゃ困る >>121
正規化はDRYよりもSRPに近い
DRYは意味を理解しなくても機械的にほぼ判断できるが
正規化はエンティティ・キー・属性の意味や関係性を理解しないと判断できない
その時その時の主観によって意味や理解が変わりうる点や
原則を過剰に適用するとわかりにくく使いにくいものになる点が似ている >>122
読んだけど、この人はちょっと理論に寄り過ぎだね
「データベース設計においては、正規化できる部分だけをきっちり正規化すれば良いのである」
「どのテーブルが正規化できるかという見極めが重要なのである」
「正規化の対象となるテーブルでは、NULLはご法度である」
↑いいたいことはわけるけど、こういう指針だけだと実践では役に立たないし
DB設計が原因で炎上してるようなところだと火に油を注ぐことになると思う 開発で最も大切なのは
1.テーブルを正規化する
2.適切なデータ型を決定する
3.制約を定義する
この3つ
これらをやってなければ炎上して当然
>>128
その通りだね
この3つより大切なモノを挙げてみるといいと思う >>130
> 読んだけど、この人はちょっと理論に寄り過ぎだね
たしかに『理論から学ぶデータベース実践入門』も理論がうざかったけどね。
ま、でも、このスレの有象無象のゴミレス読む暇があったら、「漢のコンピュータ道」の
DB関連記事読んだ方が、よっぽどためになると思うよ。 >>131
> この3つ
> これらをやってなければ炎上して当然
殆どの炎上はそれらをやっていて
炎上していると思うけど?
それらをやってない所は少ないと思う それらをきっちりやらなくても済まされるようなド底辺で生きてるんだろ
さっしてやれ どこまで正規化すんの?
大抵の落としどころはボイスコッドだと思うけど
おまいらだと第5正規化までやってそうw
システムに不要なほど過剰な正規化はするべきじゃない >>133
そりゃ予算に無理があるんじゃね?
>>134
炎上してるのだから「済まされる」とは言えないかな >>135
開発で最も大切なのは
1.テーブルを正規化する
2.適切なデータ型を決定する
3.制約を定義する
この3つ
2や3について言うことは無いのかい? 開発で最も大切なのは
1. 単一責任の原則(SRP)
2. 適切な型の定義
3. 入力チェック
この3つ
んなわけない 汎用機の考え方を引きずっているひとか設計すると正規化うんぬんの話が出るが、そもそもリレーショナルデータベースを理解している人間が設計した場合は、正規化という作業がほぼ発生しない。 わかってなければ
リレーショナルとは無縁な
単なるデータの置き場所となる 正規化って何時頃からあるの?
それ以前は殆どのプロジェクトは炎上してたの? 正規形を知っているからRDBを理解してるんじゃね?無意識に正規化してるって事だろ >>146
用途によるけど業務アプリケーションならトランザクションデータも普通は正規化するでしょ
注文明細に受注単価が入ってるのとかは正規化違反じゃないよ トランザクションデータを正規化しておけば
例えば処理が終わったトランザクションに含まれる
○○コードマスタを書き換えるだけで
過去に終わったトランザクションデータを
後から変更できて便利! マスターがバージョニングされて有効期間がきられていたら完全かもだけど普通はそこまでしない >>147
違う違う
add onlyな受注テーブルを作るんだよ
んで注文明細とリレーションを張る つまり注文データを正規化して
受注テーブルや受注明細テーブル
もしその中でコード、例えば服のサイズコードや
色コードなど正規化すべきものを使っていれば
そのテーブル
それらのテーブル全てに対して
履歴テーブルを作るというわけか?
例えば受注履歴テーブルや受注明細履歴テーブル
サイズ履歴テーブル、色履歴テーブル
ありとあらゆるその時の情報を履歴テーブルにコピーする >>151
説明が短すぎてわからないや
「トランザクションも正規化するの?」の質問とつながってるの? >>155
イベントソーシングと履歴テーブルはちょっと違うよ
履歴テーブルは状態変更イベントを記録するんじゃなくて
変化した状態そのものを記録していく
基本的にTemporal Tableと同じ >>152
カーボンコピーを受注テーブルに持たせるんだよ
それかカーボンコピーを受注リソースに分離して参照を貼る
少なくとも受注に絡む事実を注文に持たせるものではない ○次受けが多いほど退場率が早くなる。高くなる
直受けの50万 客:いつまでもうちにいていいよ
3次受けの50万(客は90万払ってる) 客:短期延長していい?
5次受けの50万(客は150万払ってる) 客:作り終わったらとっと出てけ できなかったら即退場だ
長時間労働 高稼働 高スキル要求が多い
零細フリーランスサイトは5次受けから誰もできない難易度の高い仕事 余り物の仕事を紹介してくる。40万円代でやってくれと
これならJIETから3次でいったほうがいいな
446非決定性名無しさん2017/08/02(水) 22:12:48.95
JIETに毎月5千円払えば3次から入場できるだろ?
高額をうたうフリーランスのサイトはだいたい5次から45万円
JIETで閲覧応募できる末端価格からさらに搾取するのが高額をみせつけるフリーランスサイトでした
高額案件をみせつけるフリーランスサイトも案件の取得はJIETでした
JIETに加入すれば誰でも3次60万からスタートだ。フリーランスのサイトをやってる
自称エージェントもそこから案件情報を取得しきてる。サイトで60万で釣って40万から55万の間でやらしている。
372仕様書無しさん2017/08/11(金) 10:31:43.41
フリーランスで検索すると引っかかる零細ITがやっているフリーランスのサイトはだめだ。
高額に見せているけど実際は50万前後
JIET加入した方がいいよ。案件は毎日千件以上末端価格は60万円 平凡な稼働時間の80万円の案件もある。
ユー子も求人をだしてる。名刺も渡せる。ユー子に名刺が渡せるんだぞ。夢のようだ
自称エージェントはJIETから流れてくる案件を転売してるだけだった。
JIETに加入すれば誰でも案件に応募することができた。収入が40万50万台にならなくて済む
エンド - ユー子 - エージェント-JIET 公表価格 90~60 - エージェント×3 = 言い値50万以下
エンド - ユー子 - エージェント-JIET 公表価格 90~60 - エージェント×1 悪質な言い値で50万以下
エンド - ユー子 - エージェント-JIET 公表価格 90~60 - JIETに加入して公表価格で応募ができる 816 名無しさん@お腹いっぱい。 2017/09/01 15:28:38
まそふぱぞ
>>815
そうだなキチガイ撲滅平和維持軍である俺様の勝ちだな♪
AA無職キチガイをブチ殺してスレの正常化に成功!
うぇーい☆
はい勝った♪ データベースを伴わない開発業務なんでさっぱり
テーブルの正規化って何それ 学生さんは視野が狭いですからねぇ。
この世は全てデータベースを使っているのですよ。 >>161
確かにデータベースを使わない業務もあるだろうけど
それこそ「データベースを使わない業務もある」というレベルの話だわな >>82
意味なくない
ローマは一日にしてならず
リファクタリングが必要なとこから一つ一つやってきゃいい
デグレはコードをいじるから生じるんだ ほんそれ
入れやすい部分に入ってるだけでも全然違うっつーの 重要な部分じゃなくて入れやすい部分?
入れにくい所を入れやすいように変えると
デグレを生むしなーw リファクタリング下手くそな奴ほどデグレを恐れるよね
普段からマトモなテストをしてない証拠
スキル不足を公言するようなものだ リファクタリング
自動テスト
正規化
適切なデータ型
制約
デグレを怖れる者ほど
これらを否定する コード触らない人間ほど否定的だあな
組織、チームとして動脈硬化が末期的 >>169
定時に帰りたいんで仕事でそういうのやめてもらえます? ○次受けが多いほど退場率が早くなる。高くなる
直受けの50万 客:いつまでもうちにいていいよ
3次受けの50万(客は90万払ってる) 客:短期延長していい?
5次受けの50万(客は150万払ってる) 客:作り終わったらとっと出てけ できなかったら即退場だ
長時間労働 高稼働 高スキル要求が多い
フリーランスサイトを運営している零細ITの自称エージェントは労働市場から流れてくる案件を転売してるだけだった。
労働市場に加入すれば誰でも案件に応募することができた。収入が40万50万台にならなくて済む
エンド - ユー子 - エージェント-JIET 公表価格 90~60 - エージェント×3 = 言い値50万以下
エンド - ユー子 - エージェント-JIET 公表価格 90~60 - エージェント×1 悪質な言い値で50万以下
エンド - ユー子 - エージェント-JIET 公表価格 90~60 - JIETに加入して公表価格で応募できる
eJobgo JIET JISA で検索
優良エージェント・優良サイト
首都圏IT(PE-BANK) プログラマーズ 正規化してないプロジェクトが原因不明のデータ不整合多発で大炎上しててわろた
早いうちに別案件に逃げ出せてよかった eJobgo JIET JISA で検索
優良エージェント・優良サイト
首都圏IT(PE-BANK) クラウドテック プログラマーズ 引き継ぎ資料に「どういう所に注意しなければいけないか」というのを書かないといけないらしい
「正規化されておらず制約も無いのでデータ不整合が多発するでしょう」って書いたら間違いなく俺のせいにされるな
書かなくても俺のせいにされそうだけど 「制約が無いのでデータ不整合に注意してください」
でいいんじゃない
正規化されていないとか多発するでしょうとか文章の目的にそぐわないからいらない 外部キー制約やユニーク制約なら
なんで追加しなかったんですか?ってなる
単純に追加できなかった理由こそ注意点として書くべき 旧システム側が既にデータ不整合を起こしており
不整合を起こしているデータを移行する時に問題になるから
by上司 コンバートプログラムかけばいいだろ
或いは不整合一覧を出力するようなプログラム コンバートプログラム作製は上司の担当
不整合を起こしてるデータを検出するプログラムを勝手に作ってることがバレたらどうするんだ? 最も大切なのは上司の指示や規約ではなくテーブルの正規化と制約
バレても問題ない エラーが出るので制約外せってクレーム来た
もうどうでもよくなって外しちゃった
これで不正データ混入確定
あ〜もうやだみんな死ねばいいのに >>182
不整合データをそのまま移行してて問題ないのかとか、
その承認を文書で顧客に貰っているのかとか、
その不整合に起因するあらゆる不具合については免責されるのかとか、
芋づる式に注意点が出てくる
担当上司が転職でもしたら
引き継ぎされたやつと会社が損害被るパターン >>187
きちんとリスクを説明して顧客がそれを理解した上で
制約を外すことを命じたという証拠がなければ
担当者が変わればバグ扱いになるし訴えられたら負ける可能性もあるよ
その文面だと力関係に相当な差がありそうだし いわゆる「コード値の先頭N文字がコード区分になってる」アンチパターンってどう扱うのがいいの?
業務ルールで決まってるからコード体系変えるわけにもいかないのが歯がゆい >>192
[論理レベル]
コード区分と先頭N文字以外の部分はそれぞれ独立した属性として
2つを合成した値は導出属性として扱う
(コード区分は参照テーブルを作って外部キー参照で)
[物理レベル]
導出属性を計算列やユーザー定義関数等を使って実装する
非正規化して合成した値をそのままカラムに入れる方法もよくやる
その場合は導出属性だけ更新した場合やその逆の場合で不整合が発生する >>192
客が考えたコードは一才信用せず
敢えてサロゲートキーのIDリクワイアドで物理設計を行う
サロゲートキーは原則としてユーザーに見せない
コード値にはユニーク制約やチェック制約などで対応 2重管理うぜえ
まだそのアンチパターンのがましじゃ >>193
これやるなら計算列のサポートが欲しいね
なんでM$しか計算列をサポートしてないんだろ
オラクルだと列追加してチェック制約がベターかな >>196
virtual columnが計算列と同じだよ 僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
31KGG ■ このスレッドは過去ログ倉庫に格納されています