- 1 名前:nobodyさん mailto:sage [2021/06/23(水) 16:48:13.98 ID:???.net]
- Laravel
ウェブ職人のためのPHPフレームワーク 本家 https://laravel.com/ git https://github.com/laravel 動画チュートリアル(英語) https://laracasts.com/ 和訳ドキュメント laravel.jp/ ※前スレ 【PHP】Laravel【フレームワーク】 Part.5 https://medaka.5ch.net/test/read.cgi/php/1618535648/ 【PHP】Laravel【フレームワーク】 Part.6 https://medaka.5ch.net/test/read.cgi/php/1621940461/
- 636 名前:nobodyさん mailto:sage [2021/07/07(水) 20:57:05.54 ID:???.net]
- >>622
誤魔化さなくて良いので、早くbigintが枯渇するという根拠の提示を頼むわ。 ちなみに前も書いたけどbigintは920京で1年は3153万秒な。
- 637 名前:nobodyさん mailto:sage [2021/07/07(水) 20:57:08.20 ID:???.net]
- >>621
> それはテーブル設計の話だから、FWや言語に依存すると考えるのが頭おかしい。 そんな当たり前の事すら分からないから、 少し前のレスでRDBMSのバージョンや設定の話に盛り上がり、 『デッドロックしてしまう!』などと、訳のわからない妄言を吐き合うのが、 The Laravelerなのですよ。
- 638 名前:nobodyさん mailto:sage [2021/07/07(水) 20:57:55.87 ID:???.net]
- >>623
> 誤魔化さなくて良いので 一生懸命ごまかしているのは、あなた一人。 可愛そうなLaraveler。
- 639 名前:nobodyさん mailto:sage [2021/07/07(水) 20:59:02.56 ID:???.net]
- >>624
それもすでに書いた通り、select for updateを使った実装の問題点の指摘だから別におかしいことではないよ。お前は開発したことないから理解できないようだけと。
- 640 名前:nobodyさん mailto:sage [2021/07/07(水) 20:59:43.85 ID:???.net]
- > 1年は3153万秒な。
Laravelはあまりにも遅いので、物事の尺度は『秒』です。
- 641 名前:nobodyさん mailto:sage [2021/07/07(水) 21:01:13.21 ID:???.net]
- なんか、話をはぐらかす人がいるので再掲しますが、
欠落しない連番の発行方法についてだけどみんなは ・Laravelで実装可能 ・Laravelでの実装方法はわからないが素のPHPでなら実装可能 ・そもそもわからない どれになるんですか?
- 642 名前:nobodyさん mailto:sage [2021/07/07(水) 21:02:00.86 ID:???.net]
- >>627
バカでも分かるように秒にしてあげたんだが。仮にμ秒だとしても単にそこから100万倍になるだけだから、枯渇させるには程遠いよ。
- 643 名前:nobodyさん mailto:sage [2021/07/07(水) 21:03:08.81 ID:???.net]
- Laravelerは、
排他処理を実装できず、AUTO_INCREMENTしか知らない為、 『キャンセルが発生したら欠番して番号が飛ぶ』事を恐れ、 『あ
- 644 名前:[、INTで足りるか? BIGINTにしちゃうー?』
などと、実際のユーザ数に伴わない賭博的設計でデータ型を取り決め、 『BIGINTなら絶対足りるっしょ!』などと、 おおよそ、コンピュータを使った仕事に携わっているとは思えない論理で システム開発の真似事をして日銭を稼ぐ どうしようもないロクでなし達のようです。 [] - [ここ壊れてます]
- 645 名前:nobodyさん mailto:sage [2021/07/07(水) 21:04:45.06 ID:???.net]
- >>629 が、Laravelがあまりにも遅い事を、認めました。
- 646 名前:nobodyさん mailto:sage [2021/07/07(水) 21:05:22.92 ID:???.net]
- >>629 『BIGINTなら絶対足りるっしょ!』
まさしく、この通りの低次元さです。
- 647 名前:nobodyさん mailto:sage [2021/07/07(水) 21:06:22.02 ID:???.net]
- だから、欠落しない連番の発行方法についてだけどみんなは
・Laravelで実装可能 ・Laravelでの実装方法はわからないが素のPHPでなら実装可能 ・そもそもわからない どれになるんですか? 答えてくださいっ!
- 648 名前:nobodyさん mailto:sage [2021/07/07(水) 21:09:12.41 ID:???.net]
- >>631
ふむ。ついに日本語自体通じなくなったか。とりあえず出直しておいで。次はbigintを現実的な時間で枯渇させられるという主張の根拠を用意してきてくれよな。
- 649 名前:nobodyさん mailto:sage [2021/07/07(水) 21:16:53.59 ID:???.net]
- 何故か一人だけ勝ってる気になってる >>634 が、ちょーうけるwwww
Laravelerは欠番しないIDすら発行できないのにwww
- 650 名前:nobodyさん mailto:sage [2021/07/07(水) 21:17:11.86 ID:???.net]
- Q『Laravelerに質問です。ユニークな番号はどのようにして発行しますか?』
A『(string)Illuminate\Support\Str::uuid()->getInteger(); 知らないくせにイキるなよ』 Q『それはどのような番号になりますか?』 A『172787912317449007508377903887728658844!(ドヤァ!)』 Q『帰ってもらって大丈夫です』
- 651 名前:nobodyさん mailto:sage [2021/07/07(水) 21:17:49.00 ID:???.net]
- >>630
Laravelも昔はbigint使ってなかったんだけど 「デフォルトでbigintにしておけば安全だよね」とかいう意味不明なissueが立てられて採用された結果 デフォルトでbigintのオートインクリメントが使用されるようになった LaravelerどころかLaravelのコミッターもアホですね
- 652 名前:nobodyさん mailto:sage [2021/07/07(水) 21:18:16.75 ID:???.net]
- これが、Laraveler。
medaka.5ch.net/test/read.cgi/php/1621940461/ >826nobodyさん2021/06/22(火) 09:55:34.70 >シークエンスでオートなnumberingをするようなDBのデファインを使うのは優れた方法の1つ >重複しないことをDBMSが保証してくれる上にパフォーマンスもよい >よく自動採番の欠点として例示されるのがマスタ画面で新規登録する際 >登録時に採番した番号を表示できない、表示したらキャンセルした場合に欠番が出るなんて言うけど >エントリー順にnumberingする以上、たとえ手作業でやっても避けられない問題だ
- 653 名前:nobodyさん mailto:sage [2021/07/07(水) 21:19:50.33 ID:???.net]
- >>636
ユニークな番号をどうやって発行するの?という質問に対してはその回答で正解でしょ ユーザが覚えやすいとか人間が扱いやすいとかそういう条件がつくんだったら不正解だけど
- 654 名前:nobodyさん mailto:sage [2021/07/07(水) 21:20:23.11 ID:???.net]
- >>637
結果、LaravelerはBIGINTなauto_incrementが無いと何も出来ない作業工に成りはて、 今は、何としてでもその牙城を守る事だけが魂の拠り所に…。
- 655 名前:nobodyさん mailto:sage [2021/07/07(水) 21:20:44.54 ID:???.net]
- で、LaravelerはBIGINTなAUTO_INCREMENTが頼みの綱だから、
『貴方のチケット番号は 369872048178498328 です』 とか、キチガイみたいな事言い始めるんだよなwwwww
- 656 名前:nobodyさん mailto:sage [2021/07/07(水) 21:22:16.49 ID:???.net]
- >>639
> その回答で正解でしょ もう、Laravelerって、感覚からしてトチ狂ってるロボなんだよね。 正解なわけないじゃん。 こんなロボ共に絶対に仕事発注してほしくないわ。
- 657 名前:nobodyさん mailto:sage [2021/07/07(水) 21:24:44.22 ID:???.net]
- マトモなシステムを導入した企業
「おい、型番 JS32S と PS932J の売上レポートを提出しろ」 「はい!」 Laravelを導入した企業の 「おい、ID 18474656783899542 と 4892072618349042 の売上レポートを提出つしろ」 「え? 何ですって?」 Laravelerの主張 「だって、idと製品番号が同じ必要は無いじゃないですか!』 マトモな人間の発想 「お前、同じ製品番号の商品が複数あると思ってる? 製品番号をIDにするだろ? 普通」 Laravelerの主張 「だって、Laravelはauto_incrementなIDしか持てないんですよ!!」 マトモな人間の発想 「そんなポンコツ、何で採用した!?」
- 658 名前:nobodyさん mailto:sage [2021/07/07(水) 21:25:46.79 ID:???.net]
- 面白いねぇw Laravelerの発想、面白いねぇwwww
- 659 名前:nobodyさん mailto:sage [2021/07/07(水) 21:28:22.61 ID:???.net]
- >>635
そんなつもりは無かったけど、そう思ったということはお前自身が心のどこかで俺に負い目を感じたからだろう。可哀想に。
- 660 名前:nobodyさん mailto:sage [2021/07/07(水) 21:29:03.86 ID:???.net]
- LaravelがオートインクリメントIDしか持てないってなんの話なんだ?
別にデフォルト設定がオートインクリメントなだけであって オートインクリメントIDをオフにもできるし、数値だけでなく文字列も可能だけど
- 661 名前:nobodyさん mailto:sage [2021/07/07(水) 21:30:52.47 ID:???.net]
- いいですか? みなさん。
Laravelerは、auto_incrementとuuid()が無いと、 な に も で き ま せ ん !!!!
- 662 名前:nobodyさん mailto:sage [2021/07/07(水) 21:31:58.
]
- [ここ壊れてます]
- 663 名前:80 ID:???.net mailto: Eloquentは、各モデルの対応するデータベーステーブルにidという名前の主キーカラムがあることも想定しています。
必要に応じて、モデルのprotected $primaryKeyプロパティを定義して、主キーとして機能する別のカラムを指定できます。 さらに、Eloquentは、主キーが増分整数値であることも想定しています。これは、Eloquentが主キーを自動的に整数にキャストすることを意味します。 非インクリメントまたは非数値の主キーを使用する場合は、モデルにpublicの$incrementingプロパティを定義し、falseをセットする必要があります。 モデルの主キーが整数でない場合は、モデルにprotectedな$keyTypeプロパティを定義する必要があります。 [] - [ここ壊れてます]
- 664 名前:nobodyさん mailto:sage [2021/07/07(水) 21:33:30.49 ID:???.net]
- >>645-646
相変わらず、欠番しない連番の発行方法については何一つ語りません。 かわいいですねぇw
- 665 名前:nobodyさん mailto:sage [2021/07/07(水) 21:34:43.57 ID:???.net]
- >>648
へぇ。なんか長いしごちゃごちゃ言ってるんで読んでないですけど、 で、複合プライマリキーは? 業務システムでは必須ですよねぇ?
- 666 名前:nobodyさん mailto:sage [2021/07/07(水) 21:34:48.56 ID:???.net]
- >>646
アンチオートインクリメントおじさんの妄想だから、そこあんまり突っ込んでも得るものは無いよ。
- 667 名前:nobodyさん mailto:sage [2021/07/07(水) 21:34:51.45 ID:???.net]
- >>649
やめたれwそんなこと言うとまたbigintの枯渇時間がどうのこうのって反論してくるぞw
- 668 名前:nobodyさん mailto:sage [2021/07/07(水) 21:36:53.88 ID:???.net]
- バカ過ぎるから再掲しとけ。
Laravelerの特徴 ・.envをコミットする ・node_modulesをコミットする ・vendorをコミットする ・package-lock.jsonをコミットしない ・composer.lockをコミットしない ・認証にユーザIDを利用したいのでemailカラムにユーザIDを入れる ・認証にユーザIDを利用したいのでvendor直下のファイルを修正する ・トランザクションや排他を知らない←NEW https://medaka.5ch.net/test/read.cgi/php/1624434493/548
- 669 名前:nobodyさん mailto:sage [2021/07/07(水) 21:37:52.29 ID:???.net]
- Laravelerは、
1. 平行実行可能なシステムでは、まず真っ先に採番する 2. 勿論、オートインクリメント採番! だからユーザーがキャンセルすると歯抜けになるのは仕方ない 3. 園団の一匹の口伝により、突然全児童でSELECT FOR UPDATEを連呼し始める。 4. SELECT FOR UPDATEなんか使ったらデッドロックが起きるぞ! と、謎の警鐘を鳴らす児童出現 5. RDBMSの設定やバージョンにまで言及し始める ← イマココ! 顧客が本当に必要だった物 ・新規ユーザー登録時に欠番しない連番が発行されるシステム https://medaka.5ch.net/test/read.cgi/php/1624434493/550
- 670 名前:nobodyさん mailto:sage [2021/07/07(水) 21:37:57.18 ID:???.net]
- >>649
俺は欠番しないシステムにすべきってお前の主張の前提である「bigintは現実的な時間であっという間に枯渇する」に同意してないので、その根拠が示されるまでは先に進むつもりはないぞ。示してくれたら、その欠番しないシステムの話も教えてあげるよ。
- 671 名前:nobodyさん mailto:sage [2021/07/07(水) 21:38:11.36 ID:???.net]
- >>650
残念ながらその点に関しては標準ではサポートしていない 以下ドキュメント抜粋 Eloquentは、それぞれのモデルがその主キーとして役立つことができる、少なくとも1つの一意に識別される「ID」を持つ必要があります。 Eloquentモデルは「コンポジット」主キーをサポートしていません。しかし、テーブルの一意に識別される主キーに加えて、データベーステーブルに追加のマルチカラム、 ユニークなインデックスを追加することができます。 複合主キーを使いたかったらmopo922/LaravelTreatsというライブラリを別途インストールする必要がある
- 672 名前:nobodyさん mailto:sage [2021/07/07(水) 21:39:59.98 ID:???.net]
- >>650
eloquentでは採用してないが、クエリビルダで補完できるってのはすでに上で説明してあるんだけどなー。
- 673 名前:nobodyさん mailto:sage [2021/07/07(水) 21:40:50.62 ID:???.net]
- >>647
何しれっとuuid増やしてんだよw まず知らなかったです、uuid追加しますって言えよ
- 674 名前:nobodyさん mailto:sage [2021/07/07(水) 21:42:04.12 ID:???.net]
- >>650
正直それについては反論できません・・・・・・・・・・・・・・・ githubのissueに複合主キーサポートしてくれよって要望が追加されたけど 結構揉めた挙句、複合主キーはシステムに必要ないとか言われて却下された
- 675 名前:nobodyさん mailto:sage [2021/07/07(水) 21:44:30.12 ID:???.net]
- >>659
オートインクリメントおじさん、自演は恥ずかしいからやめよう無い。laravelerならクエリビルダ知らないやつはいないから、そういう間抜けなコメントはしないんだわ。
- 676 名前:nobodyさん mailto:sage [2021/07/07(水) 21:45:57.82 ID:???.net]
- >>660
https://github.com/laravel/framework/issues/5355
- 677 名前:nobodyさん mailto:sage [2021/07/07(水) 21:47:04.28 ID:???.net]
- >>659
そら、そうでしょうよ。 だってLaravelerって>>655-658みたいな睾丸がムチムチなバカばっかなんですもん。 世の中って、バカほど声がでかいから、マトモな事を言う人間は苦労するんすよ。
- 678 名前:nobodyさん mailto:sage [2021/07/07(水) 21:47:43.70 ID:???.net]
- ■マトモな人間とバカLaravelerとの戦争
マトモなシステムを導入した企業 「おい、型番 JS32S と PS932J の売上レポートを提出しろ」 「はい!」 Laravelを導入した企業の 「おい、ID 18474656783899542 と 4892072618349042 の売上レポートを提出つしろ」 「え? 何ですって?」 Laravelerの主張 「だって、idと製品番号が同じ必要は無いじゃないですか!』 マトモな人間の発想 「お前、同じ製品番号の商品が複数あると思ってる? 製品番号をIDにするだろ? 普通」 Laravelerの主張 「だって、Laravelはauto_incrementなIDしか持てないんですよ!!」 マトモな人間の発想 「そんなポンコツ、何で採用した!?」
- 679 名前:nobodyさん mailto:sage [2021/07/07(水) 21:49:37.48 ID:???.net]
- >>661
いや、それeloquentの話な。ちゃんとissue理解してないのか?まさかとは思うけど、お前マジでlaravelerなのにクエリビルダ知らないのか? laravelとしては複合キーはクエリビルダで対応可能。eloquentではサポートしていないってだけ。
- 680 名前:nobodyさん mailto:sage [2021/07/07(水) 21:49:57.10 ID:???.net]
- >>659
ORM開発で必ず問題に成ってくるのが『JOINをどうするか』問題。 DAOもActiveRecordも、基本は 1テーブル対1Class、つまり、ORMが『テーブルに対して』紐付いている。 その設計では基本的に『JOINが実質出来ない』。エンティティもテーブルに対して紐づく為に、が対応できなくなるから。 だから、DAOやActiveRecordのアプローチでORM開発してる奴らは『JOINさせたくない』ので、複合プライマリキーを認めたくない。 例えば商品の注文場合、最低限で考えても必ず 注文伝票のプライマリキー:order_id 注文商品のプライマリキー:order_id, item_id となる。 これをしないデータベース設計なんか見たこと無い。 これを『テーブル設計が悪い』って言う奴が居るとしたら、そりゃもう、『おまえ、脳みそ腐ってるだろ?』としか言えない。
- 681 名前:nobodyさん mailto:sage [2021/07/07(水) 21:50:22.93 ID:???.net]
- 『N+1問題』とか寝言を言って喜んでいるLaraveler達…。
今、2021年っすよ?
- 682 名前:nobodyさん mailto:sage [2021/07/07(水) 21:51:30.99 ID:???.net]
- eloquentではサポートしていないって『だけ』。
……やてwwwwwwww ちょーうけるwwww 今、2021年っすよ!?えwwwwww
- 683 名前:nobodyさん mailto:sage [2021/07/07(水) 21:52:02.39 ID:???.net]
- 複合主キーでなくともJOINはできるだろw
JOINの件は複合主キーとは関係ないよ
- 684 名前:nobodyさん mailto:sage [2021/07/07(水) 21:52:29.45 ID:???.net]
- 長ったらしく書いてるけど注文のテーブルだったら
ordersにid,注文関連の情報など order_detailsにid,order_id,item_id,countなど このorder_idとitem_idが複合ユニークにすればいいだけちゃうのか?
- 685 名前:nobodyさん mailto:sage [2021/07/07(水) 21:52:48.55 ID:???.net]
- あのさぁ、お前達の読解力なんとかしてくれ。
> 複合主キーでなくともJOINはできるだろw > JOINの件は複合主キーとは関係ないよ その通り、JOINには直接は関係ない。 1. 普通のテーブル設計すると、テーブルに従属関係が出来るので、複合プライマリキーは必ず必要になる 2. テーブルに従属関係を作るのは、主テーブルのレコードに紐づく従属テーブルのレコードを関連付けてSELECTしたいから 3. 当然、JOINしたくなる 4. テーブルに紐付いているORMだと、SELECT結果がORMの設計理念から外れるため、JOINを実装しづらい。 これを逆算すると、1を禁止するのが一番良いという結論にたどり着く。 自分でActiveRecordパターンのORM作ってみれば、はっきりと分かる。 『あ、そもそものORM設計間違ってた』って。でも、後戻りは出来ない。 PHPは元々メンバ変数を動的に作成できて 例えば結果を \stdClassオブジェクトに対してマッピングすれば、無理やりJOINを実装しても破綻しないけど、 それは結局、場当たり対応以外の何物でもなくなる。 > このorder_idとitem_idが複合ユニークにすればいいだけちゃうのか? それ、妥協案っていうんだよ普通。そうすれば確かに問題は起きないだろうな。 でもな、 お前の上げたその解決法の事“こそ”を、世間一般では『テーブル設計が悪い』って言うんだよ、普通。 RDBの
- 686 名前:v想に、明らかに反してるだろ。本末転倒なんだよ、お前の言ってる事。 []
- [ここ壊れてます]
- 687 名前:nobodyさん mailto:sage [2021/07/07(水) 21:53:24.61 ID:???.net]
- >>665 をしようとすると、『ぐるぐるSQL』になってしまう、
The Laravel !!! えぇぇ!? 今、2021年っすよ!? マジっすか!!!!!????wwww
- 688 名前:nobodyさん mailto:sage [2021/07/07(水) 21:56:19.81 ID:???.net]
- 草
- 689 名前:nobodyさん mailto:sage [2021/07/07(水) 21:56:38.94 ID:???.net]
- >>670
それ、前スレの引用だったっけ? > お前の上げたその解決法の事“こそ”を、世間一般では『テーブル設計が悪い』って言うんだよ、普通。 いわないいわないwwwww Laraveler、マジ、脳みそ、腐ってるwwwww > RDBの思想に、明らかに反してるだろ。本末転倒なんだよ、お前の言ってる事。 してないしてないwwwww そういう事をするために開発されたのがRDBwwww まじ、Laraveler トチ狂ってるwww
- 690 名前:nobodyさん mailto:sage [2021/07/07(水) 21:56:42.45 ID:???.net]
- 草
- 691 名前:nobodyさん mailto:sage [2021/07/07(水) 21:56:51.05 ID:???.net]
- 草
- 692 名前:nobodyさん mailto:sage [2021/07/07(水) 21:56:57.08 ID:???.net]
- 草
- 693 名前:nobodyさん mailto:sage [2021/07/07(水) 21:57:04.81 ID:???.net]
- 草
- 694 名前:nobodyさん mailto:sage [2021/07/07(水) 21:57:10.56 ID:???.net]
- 草
- 695 名前:nobodyさん mailto:sage [2021/07/07(水) 21:57:15.84 ID:???.net]
- 草
- 696 名前:nobodyさん mailto:sage [2021/07/07(水) 21:57:30.69 ID:???.net]
- 草
- 697 名前:nobodyさん mailto:sage [2021/07/07(水) 21:57:53.63 ID:???.net]
- >>669
おっす! ぐるぐるSQL君!wwww
- 698 名前:nobodyさん mailto:sage [2021/07/07(水) 21:59:27.40 ID:???.net]
- こんなオートインクリメントしか使えないフレームワークが業界シェア1位って終わってるな
それとも他のPHPフレームワークがもっと終わってるから一番ましなのがLaravelなのか?
- 699 名前:nobodyさん mailto:sage [2021/07/07(水) 22:02:48.24 ID:???.net]
- それで結局、「bigintは現実的な時間であっという間に枯渇する」という主張の根拠は、今日も示せないってことで良いかな?
- 700 名前:nobodyさん mailto:sage [2021/07/07(水) 22:03:15.47 ID:???.net]
- 確か前スレで、『そのエロなんたらとクエリビルダ、併用出来ないの?』って聞いたら
『学習コスト考えろ!』とか言っていたのがLaravelerだったのに、 さっき『複合プライマリキー出来ないんスカ?』って聞いたら 『クエリビルダがあるだろ、ボケ!』と、 謎の言葉を吐く、Laraveler wwww もうこいつら、論理性皆無wwww
- 701 名前:nobodyさん mailto:sage [2021/07/07(水) 22:04:55.56 ID:???.net]
- >>684
学習コスト考えろなんて話見たことないけど。レス番号示してくれる?
- 702 名前:nobodyさん mailto:sage [2021/07/07(水) 22:07:14.64 ID:???.net]
- >>682
違います。終わってる奴らでもなんとなく使えるのが、 Laravelと、Wordpressなのです。 バカ御用達の二大巨頭なのです。
- 703 名前:nobodyさん mailto:sage [2021/07/07(水) 22:07:32.54 ID:???.net]
- 前スレで、eloquent禁止にしてるって企業はあるって話はしたけどね。当然ActiveRecordによる制約を受けたく無いからそういう指針になってるはずで、併用できないのか?てのはかなり愚問だと思われる。
- 704 名前:nobodyさん mailto:sage [2021/07/07(水) 22:09:20.27 ID:???.net]
- >>685
https://medaka.5ch.net/test/read.cgi/php/1621940461/807-808
- 705 名前:nobodyさん mailto:sage [2021/07/07(水) 22:10:57.52 ID:???.net]
- >>687
おい、愚問なのに、なんで複合プライマリキーならクエリビルダ使えとか言い始めてんだ? 脳みそ、涌いてんのか?
- 706 名前:nobodyさん mailto:sage [2021/07/07(水) 22:13:29.93 ID:???.net]
- Laravelerの特徴
・.envをコミットする ・node_modulesをコミットする ・vendorをコミットする ・package-lock.jsonをコミットしない ・composer.lockをコミットしない ・認証にユーザIDを利用したいのでemailカラムにユーザIDを入れる ・認証にユーザIDを利用したいのでvendor直下のファイルを修正する ・トランザクションや排他を知らない ・複合プライマリキーはRDBの思想に反している ←NEW
- 707 名前:nobodyさん mailto:sage [2021/07/07(水) 22:15:20.63 ID:???.net]
- >>688
あー、俺以外のやつが勝手に横からレスしてたのか。そりゃ確かに俺の記憶に無いわけだ。
- 708 名前:nobodyさん mailto:sage [2021/07/07(水) 22:18:16.85 ID:???.net]
- >>689
ActiveRecordてパターンとは相性悪いのが複合プライマリーキーだから、クエリビルダ使えて主張するのは当たり前の話だよね。前スレの790に書いた通りだぞ。よく読め。 790 名前:nobodyさん [sage] :2021/06/21(月) 21:09:46.99 ID:??? アプリケーション中心の設計ならEloquent、データベース中心の設計ならクエリビルダ使えるのがLaravelの良いところなんだが、まぁアホには理解できんだろう。
- 709 名前:nobodyさん mailto:sage [2021/07/07(水) 22:21:17.64 ID:???.net]
- 9223372036854775807
1msごとにリソースを消費するとして9223372036854775 ユーザーが100万人いるとして922337203 ※この時点でまだ1秒しか経過していない 1日は3600秒だから256204 256204日は701 つまり、たった701年でbigintは枯渇してしまう!! さらにCPUが64スレッドだったとしたら20年だ 20年で枯渇するのではれば十分現実的だと言える しかも20年後はきっとスレッドは64よりもっと十分に大きいだろう 以上のことからbigint枯渇は現実的かもしれないといえる!
- 710 名前:nobodyさん mailto:sage [2021/07/07(水) 22:22:55.64 ID:???.net]
- 逆の視点から考えてみよう
64bit整数とはつまり8バイトだ ただの連番IDに8バイトも使うのだ レコードが1兆あったとすれば8兆バイトのストレージが無駄に使われるのだ これはbigintが枯渇するよりもストレージの枯渇を心配したほうがいいのではないか?
- 711 名前:nobodyさん mailto:sage [2021/07/07(水) 22:24:13.09 ID:???.net]
- >>692
だからわたしが、何度も何度も再三に亘って『それ、併用できないんすか?』って聞いたのに、 おそらくはずっと『bigintが枯渇ウキ―!』って言ってるバカが、全く答えようとしなかったんだよその問題。お前なのかな? よーわからんけど。 あんとき普通に『適材適所で使い分ければイイんじゃね?』って言ってれば良かっただけなのに、 Laravelerは見ての通りのアホ揃いだから返答をごまかし続けたんだろ。 Laravelerは、FWが無ければ何も出来ないアホ揃いだって事をまず認めて、そっからスタートすべきだな。
- 712 名前:nobodyさん mailto:sage [2021/07/07(水) 22:24:22.54 ID:???.net]
- >>670
VIEWを使えばいい
- 713 名前:nobodyさん mailto:sage [2021/07/07(水) 22:27:30.24 ID:???.net]
- >>663
主キーを製品番号にした場合、製品番号の変更できない
- 714 名前:nobodyさん mailto:sage [2021/07/07(水) 22:27:54.65 ID:???.net]
- >>694
>レコードが1兆あったとすれば8兆バイトのストレージが無駄に使われるのだ >これはbigintが枯渇するよりもストレージの枯渇を心配したほうがいいのではないか? いや、『欠番が出ることが問題っすよ』って話だから。 8兆バイトは費やさないね。 極端に言うと、1の次が922京で、オーバーフローして3レコード目のINSERTでエラー、 ってのもあるよー!って問題。
- 715 名前:nobodyさん mailto:sage [2021/07/07(水) 22:29:30.20 ID:???.net]
- >>697
>主キーを製品番号にした場合、製品番号の変更できない 変更すればいいし(なんで変更できないと思ったのか理解できない) 製品番号変わったら、それは別の製品。 社会人ですか? 本当に?
- 716 名前:nobodyさん mailto:sage [2021/07/07(水) 22:30:48.45 ID:???.net]
- >>628
「欠落しない連番の発行方法」だけだと要件が足りない 欠落を定義してください
- 717 名前:nobodyさん mailto:sage [2021/07/07(水) 22:31:54.52 ID:???.net]
- >>693
1日短っ!
- 718 名前:nobodyさん mailto:sage [2021/07/07(水) 22:32:13.26 ID:???.net]
- >>695
だから「併用すればいいんじゃないですか?」自体が愚問でしょ。790の意味を理解してないってことじゃない。
- 719 名前:nobodyさん mailto:sage [2021/07/07(水) 22:39:18.84 ID:???.net]
- チーム開発する場合、1番気をつけるべきなのはアーキテクチャに一貫性を持たせること。
だからActiveRecordに依存するならeloquentのみを使うべきだし(パフォーマンスを要求するバッチ処理は除く)、ARに依存したくないあるいはデータベース設計を中心の開発がしたいなら、クエリビルダのみで設計すべきだよね。
- 720 名前:nobodyさん mailto:sage [2021/07/07(水) 22:40:35.36 ID:???.net]
- >>702
バカじゃなければ、『何がどうで、こういう理由だから愚問です』って、 日本語を、話して貰えますか? Laravel動物園児の相手、マジ、疲れる…。
- 721 名前:nobodyさん mailto:sage [2021/07/07(水) 22:41:20.43 ID:???.net]
- >>703
クエリビルダのみで設計→クエリビルダのみで実装
- 722 名前:nobodyさん mailto:sage [2021/07/07(水) 22:43:28.16 ID:???.net]
- >>704
その説明が必要な時点でチーム開発とかしたことないよねって前スレで煽ったはずなんだよね。今回はアマチュアにも優しくしようと思って、>>703で補足しておいてやったぞ。
- 723 名前:nobodyさん mailto:sage [2021/07/07(水) 22:44:27.10 ID:???.net]
- >>703
ごめーん、マジで、何言ってっかわかんないんだけど、 Laravelerってさ、全部自分たちで決められる自社開発以外、 頭の中には無いです! って言ってる? 『だからActiveRecordに依存するならeloquentのみを使うべきだし(パフォーマンスを要求するバッチ処理は除く)、ARに依存したくないあるいはデータベース設計を中心の開発がしたいなら、クエリビルダのみで設計すべきだよね。』 それ、無理が出てきたらどうすんの? 併用しないんだよね?
- 724 名前:nobodyさん mailto:sage [2021/07/07(水) 22:46:11.75 ID:???.net]
- また、チンパンジーが何かウキ―言ってるし。
猿語、マジワケワカランな。Laravel動物園、相変わらずすげぇな。 706 nobodyさん2021/07/07(水) 22:43:28.16ID:??? >704 その説明が必要な時点でチーム開発とかしたことないよねって前スレで煽ったはずなんだよね。今回はアマチュアにも優しくしようと思って、>>703で補足しておいてやったぞ。
- 725 名前:nobodyさん mailto:sage [2021/07/07(水) 22:47:39.11 ID:???.net]
- 一日が3600秒とか、正規のユーザーとか…、
寝言言ってるバカは泳がせておくに限るんですよ。
- 726 名前:nobodyさん mailto:sage [2021/07/07(水) 22:49:10.23 ID:???.net]
- >>707
具体的に無理がでるケースを述べてみなよ。
- 727 名前:nobodyさん mailto:sage [2021/07/07(水) 22:52:18.55 ID:???.net]
- ■マトモな人間とバカLaravelerとの戦争
マトモなシステムを導入した企業 「おい、型番 JS32S と PS932J の売上レポートを提出しろ」 「はい!」 Laravelを導入した企業の 「おい、ID 18474656783899542 と 4892072618349042 の売上レポートを提出つしろ」 「え? 何ですって?」 Laravelerの主張 「だって、idと製品番号が同じ必要は無いじゃないですか!』 マトモな人間の発想 「お前、同じ製品番号の商品が複数あると思ってる? 製品番号をIDにするだろ? 普通」 Laravelerの主張 「だって、Laravelはauto_incrementなIDしか持てないんですよ!!」 マトモな人間の発想 「そんなポンコツ、何で採用した!?」
- 728 名前:nobodyさん mailto:sage [2021/07/07(水) 22:53:08.01 ID:???.net]
- Laravelerの特徴
・.envをコミットする ・node_modulesをコミットする ・vendorをコミットする ・package-lock.jsonをコミットしない ・composer.lockをコミットしない ・認証にユーザIDを利用したいのでemailカラムにユーザIDを入れる ・認証にユーザIDを利用したいのでvendor直下のファイルを修正する ・トランザクションや排他を知らない ・複合プライマリキーはRDBの思想に反している
- 729 名前:nobodyさん mailto:sage [2021/07/07(水) 22:54:21.77 ID:???.net]
- Q『Laravelerに質問です。ユニークな番号はどのようにして発行しますか?』
A『(string)Illuminate\Support\Str::uuid()->getInteger(); 知らないくせにイキるなよ』 Q『それはどのような番号になりますか?』 A『172787912317449007508377903887728658844!(ドヤァ!)』 Q『帰ってもらって大丈夫です』
- 730 名前:nobodyさん mailto:sage [2021/07/07(水) 22:55:14.90 ID:???.net]
- aravelerは、
1. 平行実行可能なシステムでは、まず真っ先に採番する 2. 勿論、オートインクリメント採番! だからユーザーがキャンセルすると歯抜けになるのは仕方ない 3. 園団の一匹の口伝により、突然全児童でSELECT FOR UPDATEを連呼し始める。 4. SELECT FOR UPDATEなんか使ったらデッドロックが起きるぞ! と、謎の警鐘を鳴らす児童出現 5. RDBMSの設定やバージョンにまで言及し始める ← イマココ! 顧客が本当に必要だった物 ・新規ユーザー登録時に欠番しない連番が発行されるシステム
- 731 名前:nobodyさん mailto:sage [2021/07/07(水) 22:57:04.28 ID:???.net]
- Laravelerの本音
俺たち所詮雑魚なのだから、つよつよエンジニアが作ってるパッケージや実装を参考にするのが1番良いぞ。上にも書いたけど、まずlaravel-excelを参考にしたら良い。
- 732 名前:nobodyさん mailto:sage [2021/07/07(水) 22:57:18.40 ID:???.net]
- 複合プライマリーキーはRDBの思想に反しているってのはどこに書いてあるの?レス番号教えて。
- 733 名前:nobodyさん mailto:sage [2021/07/07(水) 22:59:44.40 ID:???.net]
- デッドロックを恐れてSELECT FOR UPDATEが使えない Laraveler >>537
- 734 名前:nobodyさん mailto:sage [2021/07/07(水) 23:00:26.40 ID:???.net]
- >>711
Laravelがオートインクリメント以外のID持てること知らないのか?
- 735 名前:nobodyさん mailto:sage [2021/07/07(水) 23:01:25.51 ID:???.net]
- あと、laravelはauto_incrementなidしか持てないってのはどこで出てきた主張だろうか?それもレス番号を示してくれ。
- 736 名前:nobodyさん mailto:sage [2021/07/07(水) 23:04:52.67 ID:???.net]
- もう、Laravelerって針のむしろじゃないっすかぁw?
|

|