「要件」を含む日記 RSS

はてなキーワード: 要件とは

2018-11-19

増田プログラマー養成講座 その22 データベース設計 概念物理

前回は、DB設計の(1)要件定義を学びました。

今回は、DB設計の(2)概念設計、(3)論理設計、(4)物理設計を見てみましょう。

 

DB設計の流れ

  1. 要件定義
  2. 概念設計
  3. 論理設計
  4. 物理設計

 

DB設計の教材

データベース解説本やWeb記事を調べてみた。

  1. 本「スッキリわかるSQL入門」 第12章 テーブル設計 https://book.impress.co.jp/books/1111101167
  2. Web記事「できるエンジニアになるためのちょい上DB術」 https://www.edifist.co.jp/lecture/dbdesign/

 

スッキリわかるSQL入門」のDB設計説明コンパクトにまとまっていて、分かりやすいと思いました。(是非一度読んでみてください。)

 

 

 

概念設計論理設計物理設計概要

スッキリわかるSQL入門」第12章の説明(p.374)を参考にしてみよう。(詳しくは本を読んでみてください。)

 

概念設計

管理すべき情報はどのようなものなのかを整理します。

データベースシステムに関することは考えず、要件に登場する情報だけをザックリと把握します。

たとえば、家計簿データベースであれば、扱うべき情報として「利用者情報」や「入出金情報」などがあることを明確にします。

また、情報間で関連がある場合、どのような関係があるかも併せて整理します。

 

論理設計

概念設計で明らかになった各情報について、RDBを使う前提で構造を整理し詳しく具体化していきます

論理設計では「どのようなテーブルを作り、それぞれのテーブルにどのような列を作るか」まで明らかにすれば十分です。

型や制約など、付随的な部分については考えません。

 

物理設計

特定DBMS製品(たとえばMySQL)を使う前提に立ち、論理設計で明らかになった各テーブルについて、その内容を詳しく具体化していきます

すべてのテーブルのすべての列について、型、インデックス、制約、デフォルト値など、テーブル作成必要なすべての要素を確定させます

この物理設計に基づいて、CREATE TABLE文などを含む一連のDDL文を作成し、最終的にデータベース内にテーブル作成することができます

 

本書の「図12-4 データベース構築のおおまかな流れ」も参考にして欲しい。

入力 お客様要件(全国の倉庫商品があって、その在庫管理したいんだけど~)

 

 

●処理 DB設計作業

 ・概念設計:(商品)(在庫)(倉庫) …ER図を作成

 ・論理設計:[商品][在庫][倉庫]    …正規化

 ・物理設計:[SHOHIN][ZAIKO][SOUKO]  …使うDB仕様に合わせてテーブル定義表を作成

 

 

●出力 DDL

 ・CREATE TABLE

 ・CREATE VIEW

 ・CREATE INDEX

 

 

 

(2) 概念設計

 

ER図とは?

ER図とは、「Entity-relationship Diagram」(実体関連図)の省略形だ。

 

ER図の用語

コンピューター用語英語ばっかりだから日本語にして欲しいよねw

 

ER図の書き方
  1. エンティティ―」は四角い箱で書く。
  2. 箱の中にエンティティ―の詳細な中身=「アトリビュート」を書く。
  3. 箱と箱を「リレーション」の線でつなぐ。
  4. 線の両端に「カーディナリティー」「オプショナリティー」の記号を書く。

 

ER図で使う記号は、「IE記法」や「IDEF1X記法」など、いろいろな規格がある。

情報処理技術者試験のデータベーススペシャリストの問題では、「UML」という図の記法も使われる。

 

 

 

(3) 論理設計

 

正規化とは?

正規化 Normalization」とは、データの形を「正規形」(Normal form)に変えること。

ざっくり言うと、テーブル(表)を分割して、データの重複や不整合を解消する作業だ。

 

テーブルの形を変えていくステップには、第1~第5まで5段階ある。

  1. 第1正規
  2. 第2正規
  3. 第3正規
  4. 第4正規
  5. 第5正規

それぞれの変形方法について理解しておこう。

実務では第3正規形まで正規化できればとりあえずOK

 

第3.5正規形(ボイス-コッド正規形)

第3正規形をより厳密にした「ボイス-コッド正規形」という形もある。

第3と第4の間なので「第3.5正規形」とも呼ばれている。

(ボイス-コッド形もカウントに入れたら、第1~第5、+第3.5で計6段階になる。)

 

非正規

正規化を進めると、SQLJOIN」の利用が増えてくる。JOINを多用する処理は遅い=DBの性能低下につながる。

第3正規形まで分割しても、実際に使ってみて遅い場合は、第2正規形や第1正規形に戻して使うこともある。これを「非正規化」とか「正規化を崩す」などという。

 

RDBでは処理速度が遅くなる場合、代わりに「NoSQL」を使う場合もある。

 

 

 

(4) 物理設計

 

時間がない場合、先にGUIDB管理ツールでデータベース作成してしまい、その後でテーブル定義表を作成することもある。

 

DB設計に慣れてきたら上記の各段階はすっ飛ばして、いきなりデータベースを作れるようになるだろう。

 

ここまで、SQLの使い方やデータベース設計について学びました。

次回は、その他のSQLに関連する話も見てみよう。

 


anond:20181015215004 未経験からプログラマーなんだが全然からない

anond:20181016015826 増田プログラマー養成講座 その1 パソコンの用意

anond:20181016164341 増田プログラマー養成講座 その2 プログラムデータ+処理、プログラム言語の種類

anond:20181016180059 増田プログラマー養成講座 その3 構造プログラミングの基本(順次、反復、分岐

anond:20181016193144 増田プログラマー養成講座 その4 子ども向け教材「Scratch」で構造プログラミング練習

anond:20181017161003 増田プログラマー養成講座 その5 オブジェクトとは何か?

anond:20181017191404 増田プログラマー養成講座 その6 OOPの種類、PHPの準備

anond:20181019181549 増田プログラマー養成講座 その7 OOPの仕組み(前半)

anond:20181020230044 増田プログラマー養成講座 その8 OOPの仕組み(後半)

anond:20181022232327 増田プログラマー養成講座 その9 MVCフレームワークを使ってみよう

anond:20181023184616 増田プログラマー養成講座 その10 OOP参考書

anond:20181024214133 増田プログラマー養成講座 その11 データベースを使ってみよう

anond:20181026145516 増田プログラマー養成講座 その12 データベース参考書

anond:20181028152656 増田プログラマー養成講座 その13 SQL文法

anond:20181031014212 増田プログラマー養成講座 その14 Webアプリの試作品作成

anond:20181101225335 増田プログラマー養成講座 その15 Webアプリの完成見本

anond:20181101230220 増田プログラマー養成講座 その16 Webアプリの完成見本(続き)

anond:20181104161900 増田プログラマー養成講座 その17 Webアプリの骨組み

anond:20181104233013 増田プログラマー養成講座 その18 SQLデータの追加と取得

anond:20181110120715 増田プログラマー養成講座 その19 SQLデータ更新

anond:20181110182445 増田プログラマー養成講座 その20 SQLデータの削除

anond:20181111205255 増田プログラマー養成講座 その21 データベース設計 (1)要件定義

anond:20181119224031 増田プログラマー養成講座 その22 データベース設計 概念物理 ←★今ここ★

anond:20181024214737 増田プログラマー養成講座 コンテンツ一覧

2018-11-17

商標として」利用しないと商標侵害にはならない

他人登録商標であっても、登録区分で「商標として」利用しないと、商標侵害にはならない。

商品などで、形式的に見せただけ書いただけ表示しただけという利用なら、権利者に対して無許可で行える。

しかしそれが昔の商標法では分かりにくかった為、誤解をする人がいた。そこで、商標法を改正上記を明文化すべきではないかという意見があった。

商標」の定義への識別性の追加等について

平成22年3月

特許庁

https://www.jpo.go.jp/shiryou/toushin/shingikai/pdf/t_mark21/02teigi.pdf

(2)また、商標法第37条等が適用される侵害の場面において、識別性が侵害の構

要件として求められていないため、商標権者以外の第三者使用する「商標

識別性を発揮する態様使用されていないにもかかわらず、商標権者から訴え

を提起されることがある旨の指摘がある。この点については、判例は、自他商品

識別機能ないし出所表示機能を発揮する態様使用しない場合商標侵害

構成しないとの解釈商標使用論2)で対処しているところ、これを何らか

の形で立法的に解決明確化)すべきとの指摘がある。


案の一つとして次のものが挙がっていた。この案は実際に行われた改正内容に近いと感じる。

(3)第26条第1項に「客観的識別性を発揮しない態様での使用」を商標権の効力

が及ばない事由として追加

商標権の効力が及ばない範囲を定める規定(第26条)に、「客観的識別性を発

揮しない態様での使用」を追加する。

これにより、自他商品識別機能ないし出所表示機能を発揮しない態様での使用

は、商標侵害にならないことが条文上明確となる。


そして平成26年の改正で第二十六条一項六号として追加された。

それが下記である

↓   ↓   ↓   ↓   ↓   ↓

第二十六条 商標権の効力は、次に掲げる商標(他の商標の一部となつているものを含む。)には、及ばない。

(省略)

六 前各号に掲げるもののほか、需要者が何人かの業務に係る商品又は役務であることを認識することができる態様により使用されていない商標

需要者が何人かの業務に係る商品又は役務であることを認識することができる態様により使用されていない商標」には商標権の効力が及ばない

まり商標形式的に表示しただけの話なら無断でも商標権の侵害にはなりませんよ、自由利用ですよ、という事である

以下は専門家による解説

平成26年特許法等の一部を改正する法律

おける商標法の改正概要

特許庁審査業務商標 雑貨繊維審査審査官  鹿児島 直人

http://www.tokugikon.jp/gikonshi/276/276tokusyu03.pdf

⑥その他(商標使用論の明文化

商標は、自他商品役務識別のために使用されるもの

あるため、自他商品役務識別機能を発揮する態様での商

標の使用は、いわゆる「商標使用」と称されています

この「商標使用」でない商標使用については、形式的

商標使用されていたとしても商標侵害構成しない

とする裁判例がこれまで数多く蓄積されていますが3)、こ

うした裁判例は商標法上の特定規定根拠とするもの

はありませんでした。

そこで、新しい商標保護の導入を踏まえ、こうした考

え方について商標法上に明確に位置付けるべく、「需要

が何人かの業務に係る商品又は役務であることを認識する

ことができる態様により使用されていない商標」に対して

商標権の効力が及ばない旨が明確にされました(改正

商標法第 26条第 1項第 6号)。

商標使用商標法26条1項6号) 法改正後、初の判例知財高裁平成26年(ネ)10098)

http://ipfbiz.com/archives/hanrei10098.html

以上

2018-11-16

Web関係者様方への感謝

あなたは,2018年において新規立ち上げや改修案件で経済に大いに貢献されました.

予算の都合,仕様要件の食い違い,システムトラブル,度重なる修正,その他多大なる困難を解決してコンバージョンを上げました.

世の中の経済活動が円滑に進んでいるのは皆様のおかげです.

よってここにその功績をたたえ深く感謝の意を表します.

関係者一同.

anond:20181115234045

書き捨てて寝たらとんでもないレスがついてて草も生えない

「行き過ぎた自由制限する」「表現の自由簒奪されようとも、それは人権侵害したことにはならない」…………

一部の人お気持ちによって基本的人権を奪う、ソレをファシズムと言うのだ。

表現の自由」は基本的人権ではないだって?お前がその寝言吐けるのも表現の自由あってのこと。マスコミ野党が連日連夜政権批判できるのも表現の自由あってのこと。なんならフェミファシズム的主張を出来るのすら表現の自由あってのことだぞ。

まり表現の自由民主主義国家の最低成立要件の一つであり、紛れも無い基本的人権。ソレを奪うということは相手人間扱いしないに等しい。

俺たちを人間扱いしない者を人間扱いする理由があるか?そこまで言ったら戦争すら通り越した何かと言って良い。

から、我々から表現の自由を奪うと言うのなら、そしてそれを実現したなら、そいつには人権無視した報復をする。自分相手人権無視する、でも自分はされなくない。そんな都合のいい世界はない。表現の自由を奪うと言うことはそう言う死兵を生み出すと知れ。

クリエイティブじゃないエンジニアWeb系では幸せになれない

最近では珍しくもなんともないが受託開発の企業から自社開発のベンチャー企業転職をした。

労働環境は劇的に改善手取りは減ったが時給で考えると(サビ残がなくなったため)むしろ良くなっている。

たぶん能力があってサービスを考えて作り出すのが好きな人には素晴らしい環境なんだと思う。

でも転職してから気づいたんだけど受託で「絶対必要とされている仕事」ばかりやってきた身からすると

「使ってくれる人がいるかどうか分からんけどこれ絶対良いものから作ろう!」っていうのが性に合わなかった。

(もちろん受託開発でユーザーニーズを掴みきれてない場合は往々にしてあって不要ということはあるし、

 自社開発でマーケティングをした結果作っているのだから使われないってことは多分ない。流行るかどうかは別にして。)

お客さんと直接会話できるポジションだったか要件聞いて設計書に落とし込むのとか楽しかったし

大変だけど全部作り終えて納品してお客さんが喜んでくれるのも嬉しかった。

今の会社不特定多数ユーザーに公開してるサービスを作ってるから直接声を聞くことはない。

不具合報告とか問い合わせはあるけどね。喜んで使ってくれてる人もいると思うけど別に声を上げないし。

昔のほうが仕事をする上で明確に自分必要とされてるということがわかった。今はいなくても良いんじゃないかなって思う。

アイディアがあふれてきて止まらない!面白いもの作るの最高ー!って人なら良かったのになぁ。

2018-11-15

どうすりゃ良かったんだろう

会社の昼休みが始まる直前に取引から「すぐ近くに来ているので、今から伺ってもよろしいですか。ちょっと急ぎの要件があって」という連絡が来た。

相手が急いでる様子だったので「駄目です。昼休み中ですので、終わってからにしてください」と言うわけにもいかず、「大丈夫です」と応えた。

そうしてやってきた取引相手は『急ぎの調整』を終わらせた後、『ついでに』と細々した調整を始め、気づけば昼の時間はすっかりなくなっていた。

結局お昼ご飯を食べる時間がなくなってしまったので昼休み後にパンを齧りながら仕事をしていると、上司イライラした顔で「ああいうのはよくない。流石にありえない」と話しかけてきた。

Q. さて、たかし君はこういうときどうすれば良かったのでしょうか?

ちなみに私は「(そんな事俺に言われてもどうしろっていうんだよ……)」と思いながら「そうですね。気をつけます」と回答しましたが、取引先に「昼飯中に来るな」とか「急ぎの用件で来たならそれが終わったらさっさと帰れ」と言う訳にもいかないので特にその後何もしてません。

2018-11-13

anond:20181113140605

脅迫罪として>

脅迫罪が成立する要件としては、

1)人を恐怖させるに足りる害悪を告知する。

2)告知内容が通常人を畏怖させるに足りるものであればいい。

3)害悪の内容を告知者または第三者が発生させ得ると思わせるものである事を要する。

4)告知内容が相手方になんらかの形で到達すればよい。

5)告知を行なう者が、架空名義、偽名、匿名でも構わない。

要件となっています。(もう少しありますが、ここでは重要でないので省略)

A)「死んで欲しい」「死ねばいいのに」といった願望を表すだけの書込みは、願望で

あって、「死」という害悪を告知しても、その害悪を加えるものとは言えません。

従って3)の要件を欠くために脅迫罪にはなりません。

B)「殺すぞ」「犯すぞ」は、生命または自由に対する害悪を告知し、人を恐怖させるに

足ります

しかし、2ch等の匿名掲示板では、害悪を加えようとしてもその相手被害者)を特定

する事が不可能です。

プロバイダ責任制限法の発信者開示請求をしようにも、告知する側に対する権利侵害

なされ、開示情報訴訟のために必要である等の正当な理由必要です。

従って、安易に開示情報を入手できません。仮にできたとしても、IPアドレスと時刻

情報だけで、相手の氏名、住所を特定するにはまだまだ手順がかかります

いずれにしろ被害者の居所を特定して害悪を加える事が簡単にはできないのです。

従って、3)の要件を欠いてしまうため、この場合脅迫罪は成立しません。

逆に言えば「お前の居所は既に知っている。×××だ。殺しにいってやる。」と書き込み

×××が正確であって、告知された者が、これは実行され得ると考え得るものであれば

脅迫罪が成立します。

2018-11-12

動画私的保存要件覚書 in YouTube

人間の声が入ってるのはNG

 →猫が主役であってほしいので、人間の声が入ると一気に興ざめてしまう。

  猫を撮ってるときオマケ程度に入っちゃうのは許容範囲

  猫がメインの動画が欲しい。

音楽はあっても良いが、あくまBGM

 →主張の強い音楽だと、やっぱり猫じゃなくて音楽が主役っぽくなってしまうので。

  無音の方がグッドである。より猫に集中できる。

再生中に、画面右上に他のオススメの○iマークが出てくるやつもNG

 →PC画面だと気にならないが、スマホ再生すると驚くほど邪魔

  オススメがもれなく入ってるチャンネルは、良いコンテンツが多いともったいないけど基本登録から除外。

  やはり主役である猫が、何にも邪魔されずに画面内を縦横無尽に動いてて欲しい。

字幕の多用、解説時間がかかるのもNG

 →一刻も早く猫の動画がみたいのに、前置き・前説が長いと結局主役である猫よりも前面に出る感があるため。

  字幕説明よりも、猫が見たいのだ。

  必要最小限のもの許容範囲

TV番組の流用は完全ギルティ

 →心の中で打首獄門を宣告、執行。慈悲はない。

  ちゃんと自前の猫を撮りなさいYouTubeなんだから

カメラアングルが下手くそだと途中で挫折

 →上記要件を満たしていただいても、

  「ええいネズミおもちゃを追っていった猫を映せ!」

  「そこは引きの絵で全体像を見せてよお願い!!」

  といったストレスを抱えてしまうので、ツライ。

  逆に編集が上手だと、シンプルカットでもすんげえ気持ちよく堪能できる。

NGばっかだと嫌な感じがするが、

NGクリアしたすんばらしい動画は本当に心の底から愛せるので、

やっぱり自分にとって好きなものを追求するというのは大事なことだ。

好きなものが欲しかったら、

やっぱり自分でいろいろ設定や要件をしっかり洗い出しをしないとうまくいかない。

その設定や要件に沿った形でジャッジすると、

ストレスなく楽しくコレクションできるのでとても良かった。

今では多数の超好みな天上猫動画自分アカウントの中に保存されてほくほく顔なのだが、

私的」なものなので公開はしない。

みんなも自分の好きなものを設定して探してみると良いよ。

2018-11-11

anond:20181111195740

まず引用要件みたしてねえ。もっとつきつめろ。

あと、快楽を装い大量殺人した道具で(今は危険がなくなったからって)楽しんでることを罪っていってんだろ

増田プログラマー養成講座 その21 データベース設計 (1)要件定義

前回まで、データベースを使ったWebアプリ作成して、SQLの使い方を学びました。

今回からデータベース設計について学んでみよう。

 

参考書

これらの参考書ガッツリ読めば、データベース設計のやり方は分かる。

 

リレーショナル・データベースは昔からある枯れた(=安定した)技術なので、鉄板ノウハウが蓄積されている。

先人の知恵に沿って使うなら、データベース設計で悩む余地は少ない。=攻略は意外と簡単

 

データベーススペシャリスト教科書

経済産業省認定情報処理技術者試験で「データベーススペシャリスト」という資格もある。

 

データベースエンジニア」という肩書きを名乗れば、ただのプログラマーよりも高給取りになれる。勉強した後、自分知識棚卸してみるつもりで資格を取ってみるのもいいだろう。

データベーススペシャリスト試験教科書には、浅く広くDB知識網羅されているので、1度眺めてみたらいいかも。

 

 

 

データベース設計の流れ

データベース設計(database design)は、ソフトウェア開発工程においてデータベースの詳細なデータモデルを作る工程である

 

  1. 要件定義:「CRUD表」の作成
  2. 概念設計:「概念モデル」の作成 → ER図(実体参照モデル)の作成
  3. 論理設計:「論理モデル」の作成 → テーブル定義表の作成
  4. 物理設計:「物理モデル」の作成 → 論理モデルを実際にデータベース上で作成インデックス作成など

(分類方法にもよるけど)データベース設計は、このようなステップを経る。それでは順番に見ていこう。

 

 

 

1.1 永続化するデータを決定する

いわゆる「要件定義」だ。

実際にシステムを使うことになるユーザーヒアリング調査して、データベース内に永続化(格納)すべきデータを決定する。

 

CRUD表とは?

データCRUD操作(Create 追加、Read 参照、Update 更新Delete 削除)が、いつ、どこで発生するか?をまとめた表のこと。

 

データベース 設計 CRUD表」等のキーワードGoogle画像検索してみよう。どんな表か分かる。

↑このページの「図2 標準的CRUD図(例)」みたいな表を作って確認すれば、扱うデータの過不足がなくなる。

 

複雑なシステムだと、完全なCRUD表を作るのは面倒だよねw

だが安心して欲しい!

押さえておくべきポイントはあるので、そこだけ手抜きをしなければ、大失敗は避けられるだろう。

 

マスタートランザクションの違い

実は、後でテーブルを作るときに、データ更新頻度によって2種類に分類できるんだ。

 

 

トランザクションデータの扱いは、気を付けないとデータベースの性能低下に直結する。

どっちのタイプデータなのか?要件定義の段階から見分ける癖を付けておこう。

 

要件定義練習

試しに、Amazonのような通販サイトなら、どんなデータを扱うことになるのか?想像してみよう。

仕入先、在庫数、受発注配送会社顧客情報商品カテゴリー、商品スペック、などいろいろあるだろう。

いつどこでCRUDが発生するか?どれがマスターデータで、どれがトランザクションデータだろうか?

 

 

 

(ここまでの説明URLを8個も貼ってしまったので、続きは次回にしよう。)

次回は「概念設計」以降のステップを見てみよう。

 


anond:20181015215004 未経験からプログラマーなんだが全然からない

anond:20181016015826 増田プログラマー養成講座 その1 パソコンの用意

anond:20181016164341 増田プログラマー養成講座 その2 プログラムデータ+処理、プログラム言語の種類

anond:20181016180059 増田プログラマー養成講座 その3 構造プログラミングの基本(順次、反復、分岐

anond:20181016193144 増田プログラマー養成講座 その4 子ども向け教材「Scratch」で構造プログラミング練習

anond:20181017161003 増田プログラマー養成講座 その5 オブジェクトとは何か?

anond:20181017191404 増田プログラマー養成講座 その6 OOPの種類、PHPの準備

anond:20181019181549 増田プログラマー養成講座 その7 OOPの仕組み(前半)

anond:20181020230044 増田プログラマー養成講座 その8 OOPの仕組み(後半)

anond:20181022232327 増田プログラマー養成講座 その9 MVCフレームワークを使ってみよう

anond:20181023184616 増田プログラマー養成講座 その10 OOP参考書

anond:20181024214133 増田プログラマー養成講座 その11 データベースを使ってみよう

anond:20181026145516 増田プログラマー養成講座 その12 データベース参考書

anond:20181028152656 増田プログラマー養成講座 その13 SQL文法

anond:20181031014212 増田プログラマー養成講座 その14 Webアプリの試作品作成

anond:20181101225335 増田プログラマー養成講座 その15 Webアプリの完成見本

anond:20181101230220 増田プログラマー養成講座 その16 Webアプリの完成見本(続き)

anond:20181104161900 増田プログラマー養成講座 その17 Webアプリの骨組み

anond:20181104233013 増田プログラマー養成講座 その18 SQLデータの追加と取得

anond:20181110120715 増田プログラマー養成講座 その19 SQLデータ更新

anond:20181110182445 増田プログラマー養成講座 その20 SQLデータの削除

anond:20181111205255 増田プログラマー養成講座 その21 データベース設計 (1)要件定義 ←★今ここ★

anond:20181119224031 増田プログラマー養成講座 その22 データベース設計 概念物理

anond:20181024214737 増田プログラマー養成講座 コンテンツ一覧

anond:20181111025515

孕みたい40代という要件を見事に満たしてると思うが

2018-11-10

増田プログラマー養成講座 その20 SQLデータの削除

前回は、SQLデータ更新をやりました。

今回は、SQLデータの削除をやりましょう。

 

メッセージの削除

基本は、同じなので前回やった更新処理をちょっと変えれば削除もすぐできます

 

投稿されたメッセージを削除する機能を、Webページに付けてみよう。

 

削除ページにジャンプするリンク

前々回作ったメッセージの一覧の中に、削除ページにジャンプするリンクも入れておいた。

<td><a href="welcome/delete/<?php echo $item['id']; ?>">削除</a></td>

という1行が削除ページにジャンプするためのリンクになる。

ブラウザーHTMLソースを見ると、ここが以下のようなHTMLに書き換わってる。

<td><a href="welcome/delete/2">削除</a></td>

これは「メッセージID番号が2のメッセージ」を削除対象にして、削除ページにジャンプする。

 

Controllerの改造

ユーザーが「http://localhost/waf/welcome/delete/2」というURLで、削除ページにアクセスしたら、コントローラーで「2」を受け取って使いたい。

CodeIgniterでは、URL文字列を解析して、使うことができる。

以下のようにコントローラーを改造してみよう。

 

// 削除画面

public function delete($id = '')

{

 echo "ID=".$id;

 $this->load->view('chat_delete');

}

 

Controllerの改造の解説

delete()メソッド引数で、URL中の「2」の部分を受け取れる。

これは前回の編集ページ(更新の処理)と同じ。

「$id = $this->uri->segment(3);」でも受け取れる。

 

Viewの改造

削除ページでは、確認する質問を入れてみよう。

ユーザーに「本当に削除しますか?」みたいな注意喚起をしておきたい。

 

ファイルの内容を以下のように編集する。

<?php defined('BASEPATH') or exit('No direct script access allowed');?>

<!DOCTYPE html>

<html>

 <head>

  <meta charset="utf-8">

  <title>増田チャット</title>

  <base href="<?php echo base_url(); ?>">

 </head>

 <body>

  <h1>増田チャット</h1>

  <h2>削除</h2>

  <p>以下のメッセージを削除しますか?</p>

  <form action="welcome/delete" method="post" accept-charset="utf-8">

   <?php if (isset($talk)): ?>

   <p style="background-color:lightpink"><?php echo $talk['message']; ?></p>

   <input type="hidden" name="id" value="<?php echo $talk['id']; ?>">

   <input type="hidden" name="action" value="delete">

   <?php else: ?>

   <p>※該当するメッセージがありません。(または削除済です。)</p>

   <?php endif;?>

   <button>削除する</button>

  </form>

  <p><a href="welcome/index">戻る</a></p>

 </body>

</html>

 

Viewの改造の解説

<p style="background-color:lightpink"><?php echo $talk['message']; ?></p>

削除するメッセージを色付きで強調して、ユーザー確認してもらう。

 

<input type="hidden" name="id" value="<?php echo $talk['id']; ?>">

コントローラー削除対象メッセージID番号を送るため、inputタグの「type="hidden"」でメッセージID番号を仕込んでおく。

 

Controllerの改造

ファイルの内容を以下のように編集する。

// 削除画面

public function delete($id = '')

{

 $id = $id ? $id : $this->input->post('id');

 $action = $this->input->post('action');

 if ($action == 'delete') {

  $this->chat_model->delete_message($id);

 }

 $data['talk'] = $this->chat_model->read_message_by_id($id);

 $this->load->view('chat_delete', $data);

}

 

Controllerの改造の解説

やってることは、前回のデータ更新場合とほぼ同じ。

$this->chat_model->delete_message($id);

で、モデルに用意したデータ削除用メソッドを呼び出しているだけ。

次は、モデルdelete_message()メソッドを用意しよう。

 

Modelの改造

ファイルの内容を以下のように編集する。

// Delete

public function delete_message($id = 0)

{

 $sql = "DELETE FROM talk WHERE id = ?";

 $param = array($id);

 $this->db->query($sql, $param);

 return $this->db->affected_rows();

}

 

Modelの改造の解説

SQLの「DELETE」を使えば、指定したレコード(1件分のデータ)を削除できる。

DELETE FROM talk WHERE id = ?」で、talkテーブルmessageid指定して削除している。

 

データを削除した後の挙動は、メッセージID番号がなくなるので、削除ページに表示できるメッセージデータがなくなる。

(例)id=2のデータを削除したら、SQLで「SELECT * FROM talk WHERE id = 2」を取得しても、空のデータデータがない状態

その場合は、

<p>※該当するメッセージがありません。(または削除済です。)</p>

と表示させてる。

 

まとめ

以上で、SQLの「DELETE」を使ったデータの削除ができた。

長々と説明したが、今回の大事な点は、SQLの「DELETE」の使い方だ。

 

以上で、MVCフレームワークを使ったOOPの使い方とSQLの使い方を見てきた。

SQLSQLだけで説明したほうが良かったね!MVCフレームワーク説明SQL説明が混在すると要点が分かりづらくなる?)

ちょっと失敗だったかも。m(__)m)

 

次回は、データベースの設計について学んでみよう。

 


anond:20181015215004 未経験からプログラマーなんだが全然からない

anond:20181016015826 増田プログラマー養成講座 その1 パソコンの用意

anond:20181016164341 増田プログラマー養成講座 その2 プログラムデータ+処理、プログラム言語の種類

anond:20181016180059 増田プログラマー養成講座 その3 構造プログラミングの基本(順次、反復、分岐

anond:20181016193144 増田プログラマー養成講座 その4 子ども向け教材「Scratch」で構造プログラミング練習

anond:20181017161003 増田プログラマー養成講座 その5 オブジェクトとは何か?

anond:20181017191404 増田プログラマー養成講座 その6 OOPの種類、PHPの準備

anond:20181019181549 増田プログラマー養成講座 その7 OOPの仕組み(前半)

anond:20181020230044 増田プログラマー養成講座 その8 OOPの仕組み(後半)

anond:20181022232327 増田プログラマー養成講座 その9 MVCフレームワークを使ってみよう

anond:20181023184616 増田プログラマー養成講座 その10 OOP参考書

anond:20181024214133 増田プログラマー養成講座 その11 データベースを使ってみよう

anond:20181026145516 増田プログラマー養成講座 その12 データベースの参考書

anond:20181028152656 増田プログラマー養成講座 その13 SQL文法

anond:20181031014212 増田プログラマー養成講座 その14 Webアプリの試作品作成

anond:20181101225335 増田プログラマー養成講座 その15 Webアプリの完成見本

anond:20181101230220 増田プログラマー養成講座 その16 Webアプリの完成見本(続き)

anond:20181104161900 増田プログラマー養成講座 その17 Webアプリの骨組み

anond:20181104233013 増田プログラマー養成講座 その18 SQLデータの追加と取得

anond:20181110120715 増田プログラマー養成講座 その19 SQLデータ更新

anond:20181110182445 増田プログラマー養成講座 その20 SQLデータの削除 ←★今ここ★

anond:20181111205255 増田プログラマー養成講座 その21 データベース設計 (1)要件定義

anond:20181024214737 増田プログラマー養成講座 コンテンツ一覧

2018-11-09

国は若手技術者プロマネとして成長する機会を奪っている

官公庁システム構築案件で「経験10年以上、さらPMPもしくはPMを取得した人」みたいな要員要件(プロマネ)がよく書かれているんだけどさ、こんな要件ばかりじゃ伸び盛りの若手技術者プロマネとして挑戦する機会がまるでないように思えるんだよね。

国は若いうちからプロマネ人材を育てようとは思わないのか?

2018-11-07

毎日疲れる

要件定義実装もだめだし、説明資料もうまく作れないし、なにをやればいいのかさっぱりわかりない

決めなきゃいけないことが多いので、どう決めればいいのかわからない

毎日疲れる

要件定義実装もだめだし、説明資料もうまく作れないし、なにをやればいいのかさっぱりわかりない

決めなきゃいけないことが多いので、どう決めればいいのかわからない

2018-11-06

anond:20181106161215

わいせつ物陳列罪の基本的事項>

構成要件

わいせつ物を頒布or公然と陳列した

わいせつ物』

わいせつ文書・図画・データを含むメディア

罰則|法定刑

懲役2年以下or罰金250万円以下or科料

懲役罰金の併科あり

刑法175条1項

わいせつ』の定義

わいせつの3要件

ア 徒に性欲を刺激・興奮させること

イ 普通人の正常な性的羞恥心を害すること

ウ 善良な性的道義観念に反すること

最高裁昭和26年5月10日;サンデー娯楽事件

わいせつ物陳列罪と似ている犯罪として『児童ポルノ公然陳列罪』があります

2018-11-05

[] 平成31年2月からお金のない学生さんは某協会放送受信料免除

そう言えば、9月頭にこれも言っとったな。

これまで散々脅迫しておいて、ぶっちゃけ、いまさらやわ。

んなの、少なく見積もっても、30年も遅いわ。

2018年9月10日】

日本放送協会放送受信規約および放送受信料免除基準の一部変更について」

http://www.nhk.or.jp/pr/keiei/otherpress/pdf/20180910.pdf

以下、抜粋

奨学金受給対象などの学生への免除施行日:平成31年2月1日)

 親元などから離れて暮らす学生生計をともにする方がいない学生を含む。)のうち、次のいずれかの要件に該当する学生を全額免除対象します。

奨学金受給対象学生

授業料免除対象学生

市町村民税課税世帯学生

公的扶助受給世帯学生

参考:総務省 報道資料 平成30年9月10日 日本放送協会放送受信料免除基準の変更の認可 http://www.soumu.go.jp/menu_news/s-news/02ryutsu07_04000199.html

↑でも、この免除申請登録)はマジでやめとけ(になるはず)! 正確には、某協会申請する書類内容に依存する。

なぜやめておくべきか、それは自分で考えて、気付いてください。

2018-11-04

マナー強要すれば強要罪の要件を満たすが馬鹿すぎて分からんのだろうな

anond:20181104075244

視線をもってどういう内心か判断するのはもはや単なる思い込みしかない

他人視線自由の成立要件にするのも単なる自意識過剰しかないよ

2018-11-03

失業給付申請先にしちゃう家賃補助もらえない問題

http://twitter.com/swepwtf/status/1058274661979500544

これに関して、後々の自分のためにも調べたことの整理。

嘘ついてたらごめんなさい。

まず住宅確保給付金には「自分が主たる生計維持者」「収入(公的給付を含む)が一定の額を下回る」「世帯の貯蓄が一定額を下回る」‬「類似公的給付を受けていない」「就職活動をしっかりする」とわりときつい状態に陥ってるという支給要件がある。

支給期間は3か月。最大9カ月まで延長できるが、延長のたびに支給要件確認有り。

失業手当は収入には算定されるが、「類似公的給付」には入らないので同時受給可能。(減額はされる)

一般的失業手当には3か月の待機期間があるが、住宅確保給付金必要状態で自ら仕事を辞めるような人はなかなかいないだろうと言うことで、特定理由離職者(=給付制限期間なし)を想定します。というかそんな人は必要雇用保険の加入期間が足りなくてもらえない気がする気がする。

まずツイート主が「住宅補助→失業手当の順なら両方貰えるが、逆だと失業手当しかもらえない」と言っているのは、失業手当だけで前者の収入要件を上回るということだと思われる。

逆順だと収入ゼロとみなされ満額支給。この額は不正受給もしくは就業をしない限り3ヶ月間変わらない(状況により増額できる場合はある)ので、支給認定が降りた直後に失業手当の申請をすると、この3か月は両方を満額受給できる。

ただし住宅補助の方を延長しようとすると、2回目の要件認定の際に失業手当の収入が引っかかるのでそれは通らないor減額の可能性が高い。

ということかな。

ちなみに「類似公的給付」とは、職業訓練受講給付金とその他離職者の住居費に関する給付金ことなので失業手当を受けてると無条件で住宅確保給付金を受ける資格がなくなるということはない。

まり申請順によって支給額が変わるというツイート主の主張は正しいが、両方を受給した状態で最大9カ月の家賃補助を受け取れるというのは勘違いもしくは担当者説明不足っぽい。

しかブコメにある「調べられない人は支援にたどり着けない」というのは本当に問題だと思います。あと担当者ガチャ

2018-11-02

anond:20181101163328

コメ読んで思い返してみた。

まず、そもそも自分が受かる気がなかったかもしれない。

正社員 年収350万〜 オープニングスタッフ」の3つだけで、応募した感はぬぐえない。

面接の受け答えはそれなりにできてた気がするけど、15分ぐらいで終わった。

と、言うかなんとなく履歴書を開いてザッ読んだ時点で面接官の興味がなくなった雰囲気を感じた。

から9km、公共交通機関は利用できない、自分の移動手段原付き。片田舎運転免許なし(応募要件には特に記載はなかったけど)は、どうもネックなような気がする。

そんなところだろうか。

anond:20181101205330

コイツ本当にデザイナーか?モノホンのアホじゃねーか

・そのキャラクターは、特定カテゴリに属する誰かの心を傷付けるもの

「誰の心も傷つけないキャラクターなんかない」で終了。

深夜アニメだろうがVtuberだろうが月9ドラマだろうが誰かしらの心を傷つけうる。

なぜオタクばかり責められるのか?

てかさ、「誰かの心を傷つける」とかいうんならこの件一番傷つけられてるカテゴリは「オタク」だろ。

それを無視するのは元増田を書いてるのがオタクヘイターからに他ならない

・過剰に性的描写はあるか(特定部位の肉体描写のしつこさ、視線誘導)

「過剰に性的」「描写のしつこさ」なんか主観的要件過ぎて判断不可。

どうしてもゾーニングしたい、オタク妨害したいというのなら具体的閾値を出してください。根拠とともに。

現実乖離した(異性に対して誤解を招くような)価値観を広めているか

これも話にならない。メディア効果論はすでに否定されてる。


こいつ良識ぶってるけどただのオタクヘイターじゃん。帰った帰った。

ゾーニング?知るかそんなもん。

俺らは見たくもない虐め芸人クソガリ女優なんかを散々見せられてるのに、なんでオタクけが引っ込まにゃならんのか。

嫌なら見るな。失せろ。

2018-10-31

研究開発の高度プロフェッショナル制度適用

高度プロフェッショナル制度対象業務研究開発とあるがどういう人を対象としているんだろう。

自分の働いている製造業だと、年収要件1075万以上となるような研究開発部門の人って管理職になってる印象だから高プロ制度なくても実情問題なさそう。

他の対象業務金融関係とかアナリストコンサルだったら管理職でなくとも1075万超えてるケースは多いだろうけど、研究開発で1075万超えてるのって相当稀な感じがする。



仕事のやり取りを、文書に残して後から両方が確認できる状態にするのは当たり前。

それをどっちがやるかのか場合によるが「今の内容メールで送ってください」も「メールで送っておきますね」も普通にやる。

アーカイブ ヘルプ
ログイン ユーザー登録
ようこそ ゲスト さん