SQL
SQL(Structured Query Language)=構造化された要求言語
SQL データベース管理システム
プログラムを作成する上で、DBへのアクセスは最適な設計にして高速化や軽量化が求められる。それを実現するためにSQLの知識が必要になる。
MySQL:データベース管理サーバー(DBMS)data base management system
リレーショナルDB:高速、No欠陥
OSS
- 代表的なDBMS
Oracle Database:
信頼性、拡張性、高可用性、セキュリティ性能
大規模なトランザクション
ex.)金融、製造、通信、エネルギー、公共機関
DB2:
IBM開発のRDBMS
大量のデータを扱う場合
ex.)金融取引、在庫管理、顧客情報管理、ビッグデータ分析
MySQL:
高速、信頼性、拡張性
OSS
- DBMSの種類
階層型データベース:データが木構造→大規模データを整合
ネットワーク型データベース:テーブルが木構造→柔軟で複雑、管理困難
リレーショナルデータベース
NoSQL:非構造
Mysqlをインストール
brew search mysql
versionに注意
DB接続の仕組み
java-JDBC(JDBC API-JDBCドライバ)-DB
JDBC(Java DataBase Connectivity)
javaとDBを繋ぐクラスやインターフェースの集まり
DBの開発元による違いを吸収する=javaの記述は変更不要
- JDBC API:JDK(Java Development Kit)に含まれる
SQLに関するパッケージ
Javaプログラムから直接呼び出して使う
↓呼び出す - JDBCドライバ:DB開発元が公開
参照
https://wa3.i-3-i.info/word144.html
https://www.youtube.com/watch?v=CorlzQ3thY8
https://youtu.be/GsubYvsLHNc?si=JWdaO_OqzenqAqNP
https://qiita.com/to3izo/items/3171220733d0e2d18bfb
https://youtu.be/cp5TCZndBf4?si=NRg-2-moFdYHqdURhttps://youtu.be/fkR1htEk6FU?si=KBEU4OJkw7hWjxhC
おまけ
サーバを言語化してみた
サービスを提供する側のコンピュータ
性能を調整されている
- 役割としてのサーバ(Server)
サービスを提供する役割のコンピュータ - 機能としてのサーバ
サーバ用途で使うために作られた性能の良いコンピュータ
Homebrew(醸造)
CLIツール(コマンド操作のユーザーインターフェース)、パッケージ(実行に必要なファイル群 Git等)管理システム
ビールの比喩
パッケージを導入し、ビルドして使うという流れを、ビールの自家醸造に関する言葉で処理用語を比喩している
パッケージ定義:formula(製造)
保存先ディレクトリ:celler(冷蔵庫)
ディレクトリ:keg(樽)
ビルド:brew(醸造)
必須コマンド
- brew install パッケージ名
インストール - brew uninstall パッケージ名
アンスト - brew list
インストール済みパッケージ一覧 - brew upgrade
パッケージのバージョンを更新 - brew doctor
homebrewに問題は無いか - brew info
パッケージ情報 - brew deps
パッケージの依存関係 - brew cleanup
パッケージの120日前のキャッシュ削除