プログラマの雑談部屋 ★376 (255レス)
上下前次1-新
160: 11/16(日)01:22 AAS
>>153
自分の使っているフレームワークだとEntityとペアになったRepositoryクラスにORMを使って絞り込みとかの機能を持たせたメソッドを書くのが基本になってるな
161: 11/16(日)01:26 AAS
>>154
ORM使っていても気をつけないとN+1問題は起きる。最近、人が書いたコードを修正したんだけど、参照しているエンティティを遅延ロードしていたおかげでクエリ数が爆発してた。
162(1): 11/16(日)01:26 AAS
機能境界とかでちゃんとDB分けたりネームスペース設定せい
163: 11/16(日)01:26 AAS
深夜の背徳トリプルチーズバーガー
164: 11/16(日)01:31 AAS
>>162
自分の使っているフレームワークとORMだと複数DBを使える可能性もあるようだけど、なんか面倒なことが起こりそうで誰も手を出さないわ。そもそも複雑に絡み合いすぎていて機能境界なんてないと思う
165: 11/16(日)01:33 AAS
マイクロサービス化は?
166: 11/16(日)03:21 AAS
MITからChatGPT活用頻度の高い人の脳活性が低いって研究が出た
167: 11/16(日)07:09 AAS
DB分けたので大失敗した
168(1): 11/16(日)08:15 AAS
あたまがぼんやりしてうごかない
169: 11/16(日)08:22 AAS
>>168
もう引退しなよ。周りに負担がかかりすぎてる
170: 11/16(日)08:29 AAS
彡 ⌒ ミ
(´・ω・`) ぼんやり見えてこないか眺めてる
171: 11/16(日)08:33 AAS
本の誤記を連絡するページに飛んだらメールアドレス必須だったからやめた
誰も計算なんか真面目にやらないだろうからずーっと間違えたままなんだろうな
172: 11/16(日)08:38 AAS
捏造メアドでも届くは届くだろ
173: 11/16(日)08:44 AAS
おっぱい
174: 11/16(日)08:57 AAS
本の誤記に気がつく者だけが真実に辿り着く
もうそれでいいじゃないか
本を鵜呑みにして一生悩んでろだよ
そもそも正誤表を調べようなんて人も一握りだし
175: 11/16(日)10:39 AAS
ねむたいから寝る
頭もぼけてるし
もうしぬんじゃないかといつもおもう
176: 11/16(日)10:40 AAS
前頭葉にダメージを負った人間の行動がおれにそっくりだった
177: 11/16(日)11:14 AAS
顔認証のロック解除って、その人の実物大の顔写真があればできますか?
178: 11/16(日)11:53 AAS
そんなものなくてもAIで生成した画像があればできるよ
179: 11/16(日)12:01 AAS
お前らDBで例えばユーザ管理すりテーブル作るとするやん
社員番号なのか何なのか一意キーとして列作るなら
id
user_id
どっち使う?
180: 11/16(日)12:04 AAS
user_id
181: 11/16(日)12:04 AAS
idはサロゲートキーにしか使ってねえや
182: 11/16(日)12:06 AAS
社員番号のような何かはuser_idに入れる。
idはレコードそのものユニークIDを入れる列名として定着してるから、そこに社員番号を入れるのはもはや嫌がらせに近い。
183: 11/16(日)12:08 AAS
userテーブルの主キーはidだろ
テーブル名がuserだからuser_idは冗長だわ
外部キーとして使う時はuser_idだけど
184: 11/16(日)12:09 AAS
そんなことより、ユーザ管理すりテーブル
が何なのか気になるわ
185: 11/16(日)12:10 AAS
やめておけ
せめてスキーマ内では
同じカラムは同じものを表せるように調整しろ
186: 11/16(日)12:10 AAS
同じカラム名
187: 11/16(日)12:12 AAS
ねえ
188: 11/16(日)12:16 AAS
じゃあuserテーブルの属性に全部user_のプレフィックスつけるのかよ
user_name
user_gender
user_email
user_address
user_rank
189: 11/16(日)12:17 AAS
なんでそう極端なんだよ
190: 11/16(日)12:20 AAS
db設計むずすぎ
191: 11/16(日)12:20 AAS
一貫性がある方がいい
idにだけuser_ついてるとなんか気持ち悪い
192(1): 11/16(日)12:23 AAS
idにだけuserというか、idとuser_idが両方あるのが現代では普通だと思う
なので選択肢がない
193: 11/16(日)12:25 AAS
日本語で整理した時どうしてた?
194: 11/16(日)12:32 AAS
Userテーブルのidなんだからuser.idだろ
user_idは他テーブルの外部キーだろ
195: 11/16(日)12:33 AAS
idは主キーとして使うと思うけど、これが例えば設計の過程で他に会員番号みたいなものがあってこれを主キーにできる場合はそれをコードでも想像しやすいuser_numberとか使うけど、これがドメインで使われる言葉じゃなくてシステムの都合で必要に迫られて生成した項目の場合はそのままidで使うかな
196(1): 11/16(日)12:46 AAS
>>192
だな。ORM使ってるとすべてのテーブルにidがあることが前提だからな
もちろん別のカラム名をidの代わりに利用することも可能だけど面倒なだけなので普通はやらない
ORM使わなくて自分でSQLがりがり書くなら好きなカラム名で良いが、いまどきみんなidがあること前提で読もうとするから不思議に思われるかもな
いつからだろうな。俺はRailsからだけど
197: 11/16(日)12:48 AAS
>>196
使用するフレームワークのORMに従ったらそうなるだけだろ
198: 11/16(日)12:49 AAS
じゃあ例えば受注と明細みたいなヘッダーディテール形式
明細レコードには受注IDが入る
受注テーブルの名前をOrderだとすると明細テーブルに入る受注IDは
order_id
parent_id
どっち使う?
199: 11/16(日)12:51 AAS
受注IDなんだからorder_idにきまってる
200: 11/16(日)13:17 AAS
基本はドメインで使われる言葉(又はその英訳)をそのまま使うだな
ユビキタス言語
201(1): 11/16(日)13:34 AAS
DoctrineかRubyOnRailsかは忘れたが、id列はデータの種類やAppドメインとは無関係な内部値にするべきという考え方が広まってな
orderテーブルだとしてもid列はただのrow idであってorder idではないのさ
202: 11/16(日)13:40 AAS
知らない土地で目を覚ましたらスマホも財布も貸与PCも全部盗まれてるって夢を見た
203(1): 11/16(日)14:27 AAS
ドメイン分析で主キーになりうる一意な項目があるならそれを主キーにするけどな
時々は複合キーも使う(ヘッダー番号+見出し番号とか)
RestAPIのURLだと、〜/bills/101/details/20 みたいな
ORマッパーも複合キーに対応するし
やむを得ない場合はid使うけどそれ以外は
わざわざidの項目増やして管理コスト増やしたくない
204(1): 11/16(日)14:29 AAS
誰とでも握手するみたいに、誰とでもセックスする時代になればいいのに
205: 11/16(日)14:33 AAS
体調崩すからヤダ
206: 11/16(日)15:08 AAS
そこはうまいことするんだよ
207: 11/16(日)15:11 AAS
ババアともセックスしなくちゃいけなくなるんだぞ
208: 11/16(日)15:12 AAS
VRなどで誰とでもセックスできるが実際は誰ともセックスしない世界になるのでほ
209: 11/16(日)15:20 AAS
>>203
俺も以前はナチュラルキーでやってたけど、もう >>201 みたいな考え方が主流な気がする。複合キーもORMで対応可能とは思うけど、やはりサロゲートキーとユニーク制約にしてしまうな。
210: 11/16(日)15:21 AAS
生成キーにしたら切り回し難しくないか
211: 11/16(日)16:18 AAS
会員番号を変更できますとか可変な場合は別途Idを主キーにしといた方が無難
将来にわたって不変の確証あるなら会員番号とかでも構わんと思うけど
ユニーク制約が複数あると大量登録時のパフォーマンスにも多少影響あるしな
212(1): 11/16(日)16:21 AAS
会員番号は変更せんやろ…
213(3): 11/16(日)16:23 AAS
少々速度が遅くてもいいので変更内容を履歴としてぜんぶ残して時系列遡れるDBにしてほしいんだが
なんでどこも作ろうとせんのだ
214: 11/16(日)16:25 AAS
使ってないだけか?
215: 11/16(日)16:28 AAS
>>213
そういう要件で出せば?
やり方は腐る程ある
216: 11/16(日)16:30 AAS
完全履歴残るファイルベースdbでいい奴があった気がするけど名前が思い出せん
217: 11/16(日)16:30 AAS
>>213
テーブル設計じゃなくてDBMSレベルの話?
218: 11/16(日)16:31 AAS
金融だと更新も削除もログとしてひたすら蓄積して、辿ることで現在の状態がわかるようになってるの普通なんじゃないの?
普通は扱いきれないからやらないけど
219: 11/16(日)16:32 AAS
自分が知ってるどのシステムもアプリで履歴テーブル作ってる
220: 11/16(日)16:38 AAS
まず >>213 がどのレベルの話をしているのかが判然とせん
221: 11/16(日)16:41 AAS
どのレベルでもいい
とにかく自分で履歴テーブル作ってアプリで管理するのがめんどい
なんとかならんのか
222: 11/16(日)16:47 AAS
どのレベルでもいい、じゃなくてどのレベルなのかわからないのでは
たぶん履歴テーブルのこともレスがあるまで知らなかったろ
223: 11/16(日)16:48 AAS
マウントの機会ばっかり伺ってるんじゃねえ
224: 11/16(日)16:53 AAS
OracleだとREDOログっていう形で変更履歴は残ってるよね
どのぐらい残るか、それをユーザが使えるのかというのは、DBAじゃないから知らないけど
225: 11/16(日)16:56 AAS
DB機能の履歴を追う→難しすぎ、データ移行するとデータ消えるので死
アプリの履歴テーブル作る→量がふくらみすぎて処理が複雑化して死
版カラムつけて管理する→SQLが煩雑化したり論理削除フラグのからみが混乱して死
226: 11/16(日)17:04 AAS
>>204
でもお前、誰とも握手してないよな
227: 11/16(日)17:05 AAS
ほしいのは多分特定レコードの任意時刻のスナップショットなんだ
228: 11/16(日)17:14 AAS
きゅうにさびしいことをいうな
229: 11/16(日)17:14 AAS
ああ、昨日のこいつか >>129
230: 11/16(日)17:15 AAS
そいつです
たすけて
231: 11/16(日)17:54 AAS
トリガーで変更前のデータを履歴テーブルに移すのが鉄板
データクソ増えるのはどうしょうもない
232: 11/16(日)18:10 AAS
増えるほど楽しくなる病にかかることがあります
233: 11/16(日)19:05 AAS
かみのけもふやしてください!
234: 11/16(日)19:28 AAS
AIに聞いたら版カラムつけてnewestフラグ管理がベストプラクティスだって
自分の中で候補のかなり下の方だった…
235: 11/16(日)19:34 AAS
エージェントの担当者から通訳士になるわけでもないのに英語の勉強するのはおかしいと注意されたことあるわ
履歴書から強制的に削除された
236: 11/16(日)19:38 AAS
そんなこと言われてたこともないわ
信用されてなくないか
237: 11/16(日)19:39 AAS
なに書いたんだ
238(1): 11/16(日)19:48 AAS
フラグ管理は汚いしコード側でフラグ回りの扱いミスるバグを作りまくるゴミだが
一番採用例は多いだろうからAIに聞いたらそうなるだろうな
239: 11/16(日)19:52 AAS
きれいにソートしてくれて接続先も対応してくれるシステムがあればいいのにな
240: 11/16(日)19:53 AAS
そっとソートしよう
上下前次1-新書関写板覧索設栞歴
あと 15 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.018s