Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
データベースで沼った話
Search
K1mu21
March 12, 2024
Programming
96
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
データベースで沼った話
めぐろLT#8の資料です
K1mu21
March 12, 2024
More Decks by K1mu21
See All by K1mu21
ADKを使って簡単にAIエージェントを作ってみよう
k1mu21
0
390
dependabotを導入して失敗した話
k1mu21
0
190
Rust勉強会1回目の資料
k1mu21
0
100
ギャレトレ勉強会
k1mu21
0
120
リプレイスでやったこと
k1mu21
1
110
Cloudflareいいぞ
k1mu21
1
180
静的解析ツールを導入した話
k1mu21
1
260
WebGLを触ってみよう
k1mu21
1
71
GoのAirを使ってみた話
k1mu21
0
180
Other Decks in Programming
See All in Programming
作って学ぶSpring BootのAuto Configuration / JJUG Night Seminar 2026-10-19
rshindo
0
210
APNsからLive Activityを開始する話
yumnumm
0
180
残高管理から台帳サービスへの進化
artoy
1
210
[Dev Group Paris Octobre 26] Agentforce, SIforce, Claudeforce, Slackbot… on s'y retrouve ?
nabondance
0
120
우리의 Nitro Modules는 당신의 Turbo Modules보다 아름답다
l2hyunwoo
0
200
GemmaをJevのように使ってみる / Use Gemma like Jev
kishida
5
840
golang-bob.pdf
iwatsukayura
0
140
Apple Intelligenceとオンデバイス時代の到来
yahir0
0
130
Lambda durable functionsでHuman in the Loopを楽に…楽に……
har1101
1
200
Web Framework Benchmark Battle 2026, Any%
a_matsuda
3
2.9k
気持ちぃ〜角丸 Squircle
ryu1013
0
340
自サークルのIdPからログアウトできるようになるまで
taiseiue
1
150
Featured
See All Featured
How to build a perfect <img>
jonoalderson
1
6.2k
A Tale of Four Properties
chriscoyier
163
24k
Heart Work Chapter 1 - Part 1
lfama
PRO
10
37k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
The Cult of Friendly URLs
andyhume
79
7k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.2k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
1
290
Optimizing for Happiness
mojombo
378
71k
The SEO identity crisis: Don't let AI make you average
varn
0
600
Ruling the World: When Life Gets Gamed
codingconduct
0
420
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
450
Utilizing Notion as your number one productivity tool
mfonobong
4
620
Transcript
データベースで 沼った話
自己紹介
• 木村 宗吾(k1mu) • 所属 ◦ 株式会社ラクーンホールディングス技 術戦略部 • 領域
◦ バックエンド(+フロントエンド) • 言語 ◦ 業務 ▪ Java PHP ◦ 業務外 ▪ Go C(++) • X ◦ @detunote
なぜこの話をするのか • テーマが初めてのLTとの事で、せっかくなら1年目として印象に残ったことを話す と面白いのでは • DBを触る方は多いと思うので、知らなかったのであればこれからの知見として ほしい
DBに関して
皆さんDBは何を使った事があります?
今回の説明で使うDB
沼った問題
前提 (テーブル)
前提 (データ)
テーブルをUPDATE UPDATE users SET name = '木村' WHERE id =
3; ID3の名前を木村に変更するUPDATEを実行する
結果 ID3の名前が変わっている MySQL ORACLE
別のSQLエディター 等で確認 Oracleの方ではID3の Nameが変わっていない ORACLE MySQL
内容が反映されていな い...!?
最後にCommitした?
解決方法 UPDATE users SET name = '木村' WHERE id =
3; commit;
結果 別のエディターで見ても データが入っていて UPDATEもされている。
DBに反映された!
原因 • コミットしていなかったため、利用中のトランザクションでしかUPDATEが反映さ れていなかった。 • 正直MySQL = ORACLE のように考えていた。 ◦
MySQLなどにはAuto Commitがあり、標準ではONになっているので最後に自分で Commitを 明示的に宣言する必要がない。 ◦ OracleにもAuto Commitがあるが標準ではOFFになっている。
他にも • バージョンによってOracleにはオートインクリメントがない ◦ シーケンスを利用して連番を生成する必要がある。 • LimitがないのでRowNumを利用して行数を制限 • SELECT句にGROUP BY句にない列を含めることができるが、その列は集約関
数の中で使用される必要がある。 • Oracleでは空文字はNullと同等に扱える
仕様はちゃんと 調べてから使おう
宣伝 弊社のconnpassページ https://raccoon-holdings.connp ass.com