【SQL】 SQL アンチパターン ~ 目次 ~
SQL アンチパターン【1】データベース論理設計のアンチパターン [01] Jaywalking(信号無視) [02] Naive Trees(素朴な木) [03] ID Required(とりあえずID) [04] Keyless Entry(外部キー嫌い) [05] Entity-Attribute-Value(EAV エンティティ・アトリビュート・バリュー) [06] Polymorphic...
View Article【SQL】 SQL アンチパターン ~ 31 Flavors(31のフレーバー) ~
問題点 * テーブルの列の値を特定したい場合、Check制約などで限定する => 変更した場合、変更 / 移植が困難。 使用してもいい場合 * 変更する事がない場合(ON/OFF, 有効/無効, 男性/女性など) 解決策 * 特定の値を別テーブルで定義する # んー。特定の値が多ければやる価値あると思うけど、、、...
View Article【SQL】 SQL アンチパターン ~ Metadata Tribbles(メタデータ大増殖) ~
問題点 * 例えば、日々データが追加されるテーブル(例えば、「売上 Sales」「発注 Orders」「支払 Payments」) があったとする。そのデータがすごく増えた場合、検索スピードが落ちる訳で... => その対策として、「年ごとにテーブル分割する」をとったら、これが、アンチパターンっと。 解決策 * 水平・垂直パーティショニング を使用する ※ パーティショニング とは?...
View Article【MySQL】 外部ファイルからSQL文を一括で実行するには...
構文 * 注意: -pの直後に続けてパスワードを指定する mysql -u <ユーザ名> -p<パスワード> -h <ホスト名> <データベース名> < <SQLファイル> サンプル * バッチファイルとして作成してみる 事前準備 * 環境変数 Path に対して、パスを通しておく (デフォルトだったら「C:\Program...
View Article【トラブル】【MySQL】 MySQL に関するトラブルシューティング
エラー「Access denied for user ****@**** (using password: YES) 」が表示権限について■ 権限を付与 GRANT 与える権限 ON データベース名.テーブル名 TO ユーザー名; # GRANT ALL ON *.* TO test; # GRANT ALL ON sampledb.* to 'user001'@'%'; ■...
View Article【MySQL】 権限に関するあれこれ
権限を付与GRANT 与える権限 ON データベース名.テーブル名 TO ユーザー名 IDENTIFIED BY 'ユーザー名に対するパスワード'; サンプルGRANT ALL ON *.* TO test IDENTIFIED BY 'password'; GRANT ALL ON sampledb.* to 'user001'@'%' IDENTIFIED BY 'password';...
View Article【Java FX】 Java FX ~ 入門編 ~
Java FX * Java のGUIライブラリ(Swing の後継) 補足 * CSSが使えるらしい * ダイアログはないらしい(自作する必要がある) 開発環境構築環境 * OS : Windows10 * Java : Java 1.8 * Eclipse : Mars.2 Release (4.5.2)...
View Article【SQL】 表の変更 / 制約 について ~ ALTER TABLE ~
はじめにhttp://blogs.yahoo.co.jp/dk521123/36153996.htmlの続き ■PRIMARY KEY制約表にプライマリーキーを追加する ALTER TABLE 【テーブル名】 ADD CONSTRAINT 【CONSTRAINT名】 PRIMARY KEY (【PKにしたいカラム名1】, 【PKにしたいカラム名2】); ■UNIQUE制約表に一意制約を追加する...
View Article【SQL】【MySQL】 データあればUPDATE、なければINSERT ~ DUPLICATE KEY ~
データあればUPDATE、なければINSERT * MySQLでは、「INSERT INTO ~ ON DUPLICATE KEY UPDATE ~」で行う サンプルCREATE TABLE文CREATE TABLE `item` ( `id` CHAR(8) NOT NULL, `name` VARCHAR(100) NULL DEFAULT NULL, `price` INT(11) NULL...
View Article【Java】 Java で、 Email を送るには... ~ JavaMail / テキストメール編 ~
Java で、 Email を送るには... * (色々あるらしいが)JavaMail を利用する 準備JavaMailのダウンロード * 以下のサイトから「javax.mail.jar」(今回は「JavaMail v1.5.5」)をダウンロードし インポートしておく...
View Article【Java】 Java で、 Email を送るには... ~ JavaMail / 添付ファイル付きメール編 ~
はじめにhttp://blogs.yahoo.co.jp/dk521123/36230453.htmlの続き。 今度は、添付ファイルを付けて送る。 ついでに、CCとBCCをつけてみた。 サンプルimport java.io.UnsupportedEncodingException; import java.security.InvalidParameterException; import...
View Article【Java】【JAX-WS】 Webサービス / Metro [5] ~応用編 / あれこれ ~
■ JAX-WS / Metro で、Webサービス終了時のイベントを拾いたい解決案 * @PreDestroy を付加したメソッドを実装 サンプルimport javax.annotation.PreDestroy; import javax.jws.WebMethod; import javax.jws.WebParam; import javax.jws.WebService; import...
View Article【トラブル】【Eclipse】【Tomcat】 Eclipseで、Tomcat8.5 を動かす
問題点 * 現在最新のEclipseのVersion(Version: Neon Release (4.6.0))でも Tomcat8.0系とTomcat9.0系は対応しているようだが、Tomcat8.5系は 以下のエラーで設定できない エラー内容The Apache Tomcat installation at this directory is version 8.5.3. A Tomcat...
View Article【トラブル】【Java】 CHAR(1)の項目を文字で更新すると、SQLException: Incorrect string value ... が 発生する
問題概要 * 以下の環境下で、CHAR(1)データ項目を文字(例えば 'f')で更新処理を行ったところ、 SQLException: Incorrect string value: 'xxx' for column 'yyy'が 発生した 環境 * OS : Windows7/10 * Java : Java1.8 * DB : MySQL * dbutils-1.6...
View Article【Java】【非同期】 ThreadPoolExecutor ~スレッドプール ~ [1]
ThreadPoolExecutor * プールされているスレッドと処理すべきタスクのリストを管理 * 以下の関連記事で扱ったWorker Thread パターン(別名スレッドプールパターン)を実装するのに使える * ThreadPoolExecutorが、ChannelとWorker を兼ね備えている...
View Article【Java】【Velocity】 Velocityを利用してメールテンプレート機能の実装を考える
はじめに * 以下の関連記事でメール送信することはできたが、本文が直書きなので、 外出しファイルで実装したい http://blogs.yahoo.co.jp/dk521123/36230453.htmlhttp://blogs.yahoo.co.jp/dk521123/36230816.html * できれば、件名も外出ししたいが... *...
View Article【Java】【Velocity】 Velocityを利用してメールテンプレート機能の実装を考える [2]
はじめにhttp://blogs.yahoo.co.jp/dk521123/36245554.htmlの続き。上記で言ってた ~~~~ できれば、 * 件名も外出ししたい ~~~~ を考える。 実装案http://blogs.yahoo.co.jp/dk521123/34463879.htmlを眺めていたら「##」がコメントアウトになるので、例えば、 ・件名は、一行目のコメント文に書く...
View Article【Linux】 ダミーSMTPサーバ構築
はじめにhttp://blogs.yahoo.co.jp/dk521123/36230453.htmlで、Windows環境にて、ダミーSMTPサーバとして、smtp4dev を利用した。 今回は、Linux環境で、ダミーSMTPサーバを立てる 種類[1] FakeSMTP(Java製) [2] MailCatcher(Ruby製) #...
View Article【Linux】 CentOS7でのサービス(デーモン) ~ systemd ~
サービス起動・停止 systemctl コマンドを利用 [1-1] サービスの起動 systemctl start サービス名.service [1-2] サービスの停止 systemctl stop サービス名.service [1-3] サービスの再起動 systemctl restart サービス名.service [2-1] サービスの自動起動設定 systemctl enable...
View Article【Linux】【コマンド】 ネットワーク系のコマンド
■ ポートを開け、反映させるその1# ポート 20025 Open sudo firewall-cmd --add-port=20025/tcp --zone=public --permanent sudo firewall-cmd --reload その2iptables -I INPUT -p tcp --dport [ポート番号] -j ACCESPT ■...
View Article