スレ立てるまでもない質問はここで 161匹目

■ このスレッドは過去ログ倉庫に格納されています
2022/08/27(土) 16:03:56.00ID:5336PvZW
この板はプログラムを作る人のための板です。
あらゆる質問はまず
スレ立てるまでもない質問はここで
スレにしてください。

次スレは>>980が立てること

【前スレ】
スレ立てるまでもない質問はここで 160匹目
https://mevius.5ch.net/test/read.cgi/tech/1652160275/
620599
垢版 |
2022/10/10(月) 16:16:31.19ID:gz0/2IVP
有料ライセンスのデータベースを使ったら、
Kubernetes で増減したら、ややこしくて仕方ない

幾ら掛かるか、分からない
2022/10/10(月) 17:58:38.99ID:W0wo57XM
>>618
OSSの、と言うことならわからなくもない

>>619
> Azure, SQLServer などは、聞いたことがない。
> ほぼAWS。他には、GCP でFirebase もある
とか書いてあるんだからそれは無い
お前は煽ることしかできないのか
2022/10/10(月) 18:00:46.34ID:C38R1GQo
>>621
知っててOracle無しで三大を選んだならアホとしかw
2022/10/10(月) 18:34:22.59ID:aN0I/9HG
無償ライセンス縛りだろ、どっちがアホなんだか
2022/10/10(月) 18:38:34.35ID:C38R1GQo
SQL Serverは無償版があるのを知らないということか
2022/10/10(月) 19:22:01.45ID:sZMfe15d
それを使えるならみんな無償版使うよね
働いたことないのかな?
2022/10/10(月) 19:24:40.21ID:C38R1GQo
よほど大きなサイトでなきゃ普通に仕事で使えるぞw
働いたことないのかな?
よほど大きなサイトなら有償版使おうね
2022/10/10(月) 19:26:14.77ID:j/SooSq4
SQL Serverは業務システム系で社内用としてよく使われてる
2022/10/10(月) 19:29:04.96ID:4vLuSNBU
三大安物データベース
2022/10/10(月) 19:29:08.23ID:j/SooSq4
SQL Serverは三位らしい

https://db-engines.com/en/ranking
1. 1. 1. Oracle detailed information Relational, Multi-model info 1236.37 -1.88 -33.98
2. 2. 2. MySQL detailed information Relational, Multi-model info 1205.38 -7.09 -14.39
3. 3. 3. Microsoft SQL Server detailed information Relational, Multi-model info 924.68 -1.62 -45.93
2022/10/10(月) 19:31:58.37ID:C38R1GQo
集計の仕方にもよると思うけどまあ安定のOracleだよな
2022/10/10(月) 19:39:38.72ID:4vLuSNBU
SQLiteは下手な使い方をすると同時書き込みでデータが壊れることがあるからローカルアプリ以外で使うのは不安しかない
開発は本番と同じものを使うのが基本だから開発だけSQLiteを使ってるやつはアフィか何かに騙されてる情弱だろ
2022/10/10(月) 19:45:22.84ID:C38R1GQo
>>631
SQLiteは大多数のスマホアプリがアプリのローカルデータ保存用に使ってるのよ
だから膨大な数が使われてるけど他のデータベースとはちょっと用途が違うんだよね
2022/10/10(月) 19:45:43.46ID:j/SooSq4
>>631
正しい使い方すればいいだけだろ
自分のミスを人のせいにするな
2022/10/10(月) 19:52:36.12ID:C38R1GQo
>>633
同時書き込みしないようリトライとかキューとかロックとか使わなきゃいけないんだが
そんなデータをテキストファイルで保存するレベルのめんどくさいことするくらいなら普通にデータベース使えばよくね?
2022/10/10(月) 19:57:37.19ID:i5WkQhGL
>>626
どこからを余程と言ってるのか知らんけど会社で使うならサポートもいるしExpressは10GB制限よりメモリー1GB制限とかレプリケーションできないのがきつい
さすがに基幹が落ちたら今どき仕事にならん
まあそういうシステム構築したことない人にはわからないと思うけど
2022/10/10(月) 19:58:43.34ID:j/SooSq4
>>634
SQLiteは同時書き込みしても問題ないように作られてる
内部でロックを掛けてる
知らんのか
2022/10/10(月) 20:02:29.52ID:4vLuSNBU
>>636
ちょくちょく壊れてるの知らんのか
2022/10/10(月) 20:05:17.35ID:j/SooSq4
>>637
お前が間違った使い方をしてるからだろw
2022/10/10(月) 20:06:54.10ID:j/SooSq4
ここにSQLiteのデータベースを壊すにはどうやるかが書かれている
逆に言えば、こんなアホなことをしなければいい
https://www.sqlite.org/howtocorrupt.html
2022/10/10(月) 20:07:02.42ID:4vLuSNBU
>>638
俺が壊したわけじゃなくそういう報告が多々あるということだよ
https://sqlite.org/lang_transaction.html
ここにも書いてあるだろ
> SQLite supports multiple simultaneous read transactions coming from separate database connections, possibly in separate threads or processes, but only one simultaneous write transaction.
2022/10/10(月) 20:08:50.80ID:4vLuSNBU
>>639
だから他のやつも言ってる通りそんなめんどくさいことするくらいならJSONでテキストファイルに書き込むのと変わらないんじゃね
2022/10/10(月) 20:09:06.22ID:j/SooSq4
>>640
そこに書いてあるのはちゃんとロックを掛けているという言葉だけだ
2022/10/10(月) 20:09:37.36ID:j/SooSq4
>>641
めんどくさいって何が?w
ここに書いてあるめんどくさいことをしなければ壊れないって書いてるんだよ
2022/10/10(月) 20:10:05.36ID:j/SooSq4
英語読めないなら翻訳ソフトつかえばいいのに(笑)
2022/10/10(月) 20:10:38.80ID:4vLuSNBU
>>642
違うね
ロックがかかるから書き込みに失敗すると書いてある
実際には失敗するだけじゃなく壊れるケースがある
2022/10/10(月) 20:11:15.34ID:4vLuSNBU
うーんアホとは話にならんな
2022/10/10(月) 20:11:36.69ID:j/SooSq4
>>645
↓翻訳してやったぞ。で、どこに書いてるんだ?www

SQLiteは、別々のデータベース接続から、場合によっては別々のスレッドやプロセスで来る、
複数の同時読み取りトランザクションをサポートしますが、同時書き込みトランザクションは1つだけです。
2022/10/10(月) 20:12:07.58ID:05PhEyUd
>>647
そうだな
一つしかサポートしないと書いてあるな
2022/10/10(月) 20:12:38.50ID:j/SooSq4
そりゃちゃんとロックかかってるからね
壊れない証拠
2022/10/10(月) 20:13:41.70ID:05PhEyUd
大丈夫かこいつ?
ロックかかってるから失敗するって上で言われたばかりなのに
2022/10/10(月) 20:13:43.37ID:j/SooSq4
エラーが出た!つまり壊れたということ!

こんな感じか?
アホらしいw
2022/10/10(月) 20:14:33.06ID:05PhEyUd
実際よく壊れてるからググってみたらどうよ?
2022/10/10(月) 20:16:38.07ID:05PhEyUd
https://runebook.dev/ja/docs/sqlite/howtocorrupt#_continuing_to_use_a_file_descriptor_after_it_has_been_closed
日本語のもあるぞ
この程度で壊れる
2022/10/10(月) 20:17:40.84ID:j/SooSq4
> この一例は、2013 年 8 月 30 日頃にFossil DVCSの正規リポジトリで発生しました。

おじいちゃんにとっては、昨日のことなんだろうなw
2022/10/10(月) 20:18:37.13ID:05PhEyUd
なんだ一例という言葉を知らんのか
2022/10/10(月) 20:18:53.62ID:j/SooSq4
一例(解決済み)
2022/10/10(月) 20:19:13.54ID:j/SooSq4
今はもう零例じゃんwww

レイレイじゃんwww
2022/10/10(月) 20:20:29.48ID:05PhEyUd
>>656
解決策ってこれなんだが
> この種の問題を防ぐために、SQLiteバージョン 3.8.1 (2013-10-17) 以降では、データベース ファイルに小さい番号のファイル記述子を使用することを拒否しています。
2022/10/10(月) 20:20:46.40ID:05PhEyUd
解決してるように見えるのかこれが?
2022/10/10(月) 20:21:22.21ID:j/SooSq4
> 問題を防ぐために、

問題は防がれました
2022/10/10(月) 20:22:03.98ID:05PhEyUd
すごいなお前
全く文章が読めないのな
2022/10/10(月) 20:22:51.34ID:j/SooSq4
SQLITE_MINIMUM_FILE_DESCRIPTOR=N

UNIX VFSは、以下のファイル記述子を決して使用しませんN。のデフォルト値Nis 3.

番号の低いファイルディスクリプタの使用を避けることは、
偶発的なデータベースの破損に対する防御策です。
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
例えば、ファイルディスクリプタ2を使用してデータベースファイルを開いた後、
assert()が失敗してwrite(2,...)が呼び出された場合、アサーションエラーメッセージで
データベースファイルの一部が上書きされ、データベースが破損する可能性があります。
より高い値のファイルディスクリプタのみを使用することで、
この潜在的な問題を回避することができます。
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
このコンパイル時オプションを 0 に設定することで、
番号の低いファイルディスクリプタの使用に対する保護を無効にすることができます。
2022/10/10(月) 20:24:39.30ID:05PhEyUd
例えばって書いてあるだろ?
そんで標準エラーについては防いだって書いてあるよな?
意味わかってないの?
本気?
2022/10/10(月) 20:25:18.43ID:05PhEyUd
あとコンパイルオプションって書いてるのもなんの事かわかってないんだよな?
2022/10/10(月) 20:25:19.50ID:j/SooSq4
だから防いだんだろwww
2022/10/10(月) 20:25:42.84ID:j/SooSq4
>>664
コンパイルオプションについて説明してもいいぞw
2022/10/10(月) 20:25:49.58ID:05PhEyUd
防げてないだろw
2022/10/10(月) 20:26:10.12ID:05PhEyUd
コンパイルしなきゃいけないのはわかってんの?
2022/10/10(月) 20:26:11.74ID:j/SooSq4
偶発的なデータベースの破損に対する防御策です。
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

この潜在的な問題を回避することができます。
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2022/10/10(月) 20:26:36.59ID:05PhEyUd
まったくわかってないじゃんw
2022/10/10(月) 20:27:06.52ID:j/SooSq4
>>668
コンパイルしなきゃ使えない?

( ゚∀゚)アハハハハ八八ノヽノヽノヽノ\/\
2022/10/10(月) 20:28:03.22ID:j/SooSq4
> このコンパイル時オプションを 0 に設定することで、
> 番号の低いファイルディスクリプタの使用に対する保護を無効にすることができます。

これを読んだアホ「コンパイルしなきゃいけないのはわかってんの?」

コンパイルしなきゃいけないのはわかってんの?
2022/10/10(月) 20:28:10.25ID:SAehROYW
このところ毎日張り付いてるアスペだな
今朝も5時から発狂してたやつだ
2022/10/10(月) 20:28:18.69ID:j/SooSq4
( ゚∀゚)アハハハハ八八ノヽノヽノヽノ\/\
2022/10/10(月) 20:28:48.67ID:SAehROYW
>>671
コンパイルオプションがコンパイルしなくても使えるとおもってんじゃん
2022/10/10(月) 20:29:26.51ID:j/SooSq4
> このコンパイル時オプションを 0 に設定することで、
> 番号の低いファイルディスクリプタの使用に対する保護を無効にすることができます。

これを読んだアホ「コンパイルオプションがコンパイルしなくても使えるとおもってんじゃん」

( ゚∀゚)アハハハハ八八ノヽノヽノヽノ\/\
2022/10/10(月) 20:29:34.49ID:Bm6oYwpd
きっつ
2022/10/10(月) 20:29:55.26ID:j/SooSq4
この人SQLiteをコンパイルしないで使ってるのかな?

( ゚∀゚)アハハハハ八八ノヽノヽノヽノ\/\
2022/10/10(月) 20:30:13.62ID:oErDHj9T
コンパイルオプションを知らんやつが発狂してるのか
2022/10/10(月) 20:30:55.87ID:GNv/b0La
うーんまさにキチガイ
2022/10/10(月) 20:31:04.81ID:j/SooSq4
アホ「コンパイルオプションはね、自分で1に設定しないといけないものなんですよ!」

こんな感じ?

( ゚∀゚)アハハハハ八八ノヽノヽノヽノ\/\
2022/10/10(月) 20:31:42.57ID:j/SooSq4
デフォルトで有効になってるのも知らない?

( ゚∀゚)アハハハハ八八ノヽノヽノヽノ\/\
2022/10/10(月) 20:32:11.12ID:GNv/b0La
>>671
うわあ
2022/10/10(月) 20:36:03.33ID:GNv/b0La
>>682
https://www.sqlite.org/compile.html
なってないな
3と書いてある
2022/10/10(月) 20:37:08.98ID:uR99Xz5R
これはさすがに草
2022/10/10(月) 20:39:48.21ID:634U10r8
要するにsqliteは使ってはいけないということだな
2022/10/10(月) 20:59:12.63ID:sJsMwDUU
>>593,673
どんだけ悔しかったんだよw
今日は朝書いて昼に別スレにちょっとレスしただけだぞ
2022/10/10(月) 20:59:42.74ID:C38R1GQo
やっぱりこいつだったなw
2022/10/10(月) 21:04:31.88ID:sJsMwDUU
>>653
そもそもこれSQLiteのバグじゃなくてアプリのバグだぞ
SQLiteが管理してるファイルに他のプロセスが書き込んだらそりゃ壊れるわ
ファイルディスクリプタ 2 ってよく使われるから 3 以上にしときゃ多少はマシになるっていう対策
当たり前だけど完全に防ぐのは多分無理
2022/10/10(月) 21:07:16.30ID:C38R1GQo
ほらw
2022/10/10(月) 21:20:35.25ID:sJsMwDUU
レスがおかしいと言うなら指摘すればいいのに...
まあ出来ないからそんなレスしか返せないんだろうけどw
2022/10/10(月) 21:23:14.09ID:B7gxAPac
>>631
ORM任せでDBMS依存コード書かないなら開発者のローカル環境に本番とは違うスタンドアロン用の簡易DBを使うことは普通にあるぞ

ローカルのWebサーバーが必ずしも本番と同じじゃないのと同じこと
2022/10/10(月) 21:32:23.35ID:sJsMwDUU
>>692
そりゃあるだろうけど今時のPCならPostgreSQL程度を入れるのはたいして苦じゃないからわざわざ別のDBMSにする必要はない気もする
ORMも完璧じゃないから開発機では大丈夫でも本番機でバグ踏むかも知れないし
2022/10/10(月) 21:41:49.24ID:mmk35L4D
別人のふりをするのはどうかと思うが前回みたいに数日張り付いてごまかし続けるよりはまだマシかな
2022/10/10(月) 21:51:33.54ID:sJsMwDUU
別人のフリとか意味わからんけど?
そんなに悔しかったのか?w
2022/10/10(月) 21:54:09.49ID:C38R1GQo
5時から暇つぶしするほど暇なやつが何か言ってるな
2022/10/10(月) 22:36:11.06ID:sJsMwDUU
>>696
>>691
698デフォルトの名無しさん
垢版 |
2022/10/10(月) 22:36:46.13ID:LhGSEaIU
C言語を勉強しているサイトの内容がちょっと古そうなんですけれども今の所一部を除けば動作している状況で結構進んだんで並行してC#かC++に入ろうと思ってますがサイトの内容は古いですか?問題はありますか?(リンクが貼れませんがC言語入門と検索すると一番上にくるURLがwisdomから始まるサイトです)
699デフォルトの名無しさん
垢版 |
2022/10/10(月) 22:41:01.76ID:LhGSEaIU
お手数ですがそのサイトのC言語の学習ページの1番下から「戻る」を押すとC++、C#の学習ページのリンクがあるページに飛ぶのでこれから学習する上で内容に問題がないのかもし分かれば教えていただきたいです。
2022/10/10(月) 22:43:51.59ID:C38R1GQo
そんなに悔しいなら黙ってればいいのに
2022/10/10(月) 22:45:38.44ID:9ReYIgGU
>>693
もしかして開発PCと本番環境しかない前提?
それなら本番環境と絶対に合わせるけどローカル環境とは別に開発・テスト用のサーバー環境を最低でも2~3個用意するのが普通でしょ
DBMS絡みのテストはそっちでやる

Postgres一つ入れるくらいは大した手間じゃないけど各案件用に各開発者の環境を揃える手間は馬鹿にならないよ
2022/10/10(月) 23:01:47.70ID:sJsMwDUU
>>701
それは>>599に聞いてくれ
まあ規模なんて案件によってピンキリだから
> 開発・テスト用のサーバー環境を最低でも2~3個用意するのが普通でしょ
とか言われても君の案件ならそうなんだろうねとしか思わんが
2022/10/10(月) 23:41:18.04ID:kYumaYAG
>>701
複数DBMS対応のためにORMを採用したならテスト環境は対応するDBMS分複数用意しないか?
環境構築の手間はかえって大変だと思うが。
2022/10/11(火) 00:33:08.40ID:4Ej/WYmd
知らないなら知らないで無駄にマウンティングしようとせずスルーしとけばいいのに
2022/10/11(火) 06:39:26.73ID:D4ywmAPt
本人は暇つぶしと言ってるがはたからはアホなこと言って発狂してるようにしか見えんのよな
2022/10/11(火) 06:53:23.65ID:D4ywmAPt
>>332
true/falseを知らんのかな?
自分のアホな知識を見直せよw
707599
垢版 |
2022/10/11(火) 13:45:01.42ID:17+/w9Hg
改訂4版 基礎 Ruby on Rails、黒田努・佐藤和人、2018

例えば、この本はRuby 2.5.1, Rails 5.2 だけど、SQLite を使っている。
ローカル開発の初心者向けには、SQLiteが多い

Ruby on Rails 6 実践ガイド、黒田努、2019
Ruby on Rails 6 実践ガイド[機能拡張編]、黒田努、2020

この2冊になると、Ruby 2.6, Rails 6.0 で、
中級者向けだから、PostgreSQL を使う

これ以上になると、Docker とか、Heroku, Cloud 9 で、リモート開発になる

ちなみにRails 6 からはデフォルトで、複数DB でテストするようになった
708デフォルトの名無しさん
垢版 |
2022/10/12(水) 07:06:54.78ID:qBUjQXh1
Wikiサイトを作ろうとしてるんですけどSQL実行文でプログラムに接続文字直書きするのって悪いんですかね?
https://www.delftstack.com/ja/howto/csharp/sql-insert-in-csharp/#:~:text=C%23%20%E3%81%AE%E5%8D%98%E7%B4%94%E3%81%AA%E3%82%AF%E3%82%A8%E3%83%AA%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%9F%20SQL%20%E6%8C%BF%E5%85%A5%20%E5%8D%98%E7%B4%94%E3%81%AA%E3%82%AF%E3%82%A8%E3%83%AA%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89%E3%81%AF%E3%80%81C%23,%E3%81%A7%20SQL%20%E3%81%AE%20insert%20%E3%82%AF%E3%82%A8%E3%83%AA%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6%E3%83%87%E3%83%BC%E3%82%BF%E3%83%99%E3%83%BC%E3%82%B9%E3%83%86%E3%83%BC%E3%83%96%E3%83%AB%E3%81%AB%E3%83%87%E3%83%BC%E3%82%BF%E3%82%92%E6%8C%BF%E5%85%A5%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%99%E3%80%82
このサイトのconnectionstringをそのままプログラムに書き残す方法です
2022/10/12(水) 07:24:00.06ID:TyHUeGJp
接続文字列のハードコーディングなんかしていいわけがない
710デフォルトの名無しさん
垢版 |
2022/10/12(水) 07:28:49.56ID:qBUjQXh1
>>709
ではどうするのが一般的でしょうか?
そのことについての概要が載ってあるサイトありますか?
2022/10/12(水) 07:42:15.17ID:TyHUeGJp
>>710
app.config(古めの方法)
https://learn.microsoft.com/ja-jp/visualstudio/ide/managing-application-settings-dotnet?view=vs-2022

汎用ホストにAddJson(新しめの方法)
https://learn.microsoft.com/ja-jp/aspnet/core/fundamentals/host/generic-host?view=aspnetcore-6.0

かなり古いけど長年採用されてきた方法
https://dobon.net/vb/dotnet/programing/storeappsettings.html
712デフォルトの名無しさん
垢版 |
2022/10/12(水) 08:00:07.39ID:qBUjQXh1
>>711
これってプログラムに書く方法と何が違うのでしょうか?
別ファイルから文字を読み取るから安全って話ですか?
2022/10/12(水) 08:05:35.54ID:TyHUeGJp
>>712
https://ja.wikipedia.org/wiki/%E3%83%8F%E3%83%BC%E3%83%89%E3%82%B3%E3%83%BC%E3%83%87%E3%82%A3%E3%83%B3%E3%82%B0
714デフォルトの名無しさん
垢版 |
2022/10/12(水) 08:09:34.92ID:qBUjQXh1
あと今回はC#を使いましたがJavaScriptとか他の言語も同様にjsonファイル作ってそこから呼び出しという感じでしょうか?
2022/10/12(水) 08:13:02.65ID:TyHUeGJp
コンパイル無しで動くスクリプト言語の場合は少し状況が違うけど設定をコードに埋め込まず別に管理する方が保守性は高くなるね
716デフォルトの名無しさん
垢版 |
2022/10/12(水) 08:19:47.35ID:qBUjQXh1
>>715
なるほどありがとうございます
安全性ではなく保守性の問題なのですね
2022/10/12(水) 10:16:53.81ID:zOJs119y
あとハードコードしたものをついうっかりgithubにpushしてしまい
他人に悪用されて情報漏洩やクラウド破産しかける人もいる
718599
垢版 |
2022/10/12(水) 13:12:35.58ID:vHtlGJeU
Ruby on Rails では、
秘匿情報の管理に、暗号化済みのcredentials.yml.enc を使う

それを解読するmaster.key は、最初から.gitignore に追加されているので、
暗号化されているcredentials.yml.enc を、そのままGithub へ上げても大丈夫
2022/10/12(水) 13:41:05.59ID:TyHUeGJp
暗号化されてるから公開してもいいという理屈には疑問符しかない
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況