質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

CakePHP

CakePHPは、PHPで書かれたWebアプリケーション開発用のフレームワークです。 Ruby on Railsの考え方を多く取り入れており、Railsの高速性とPHPの機動性を兼ね備えています。 MVCやORMなどを「規約優先の考え方」で利用するため、コードを書く手間を省くことができます。 外部のライブラリに依存しないので、単体での利用が可能です。

データベース設計

データベース設計はデータベースの論理的や物理的な部分を特定する工程です。

Q&A

解決済

1回答

1901閲覧

データベーステーブルについて

Aneks

総合スコア114

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

CakePHP

CakePHPは、PHPで書かれたWebアプリケーション開発用のフレームワークです。 Ruby on Railsの考え方を多く取り入れており、Railsの高速性とPHPの機動性を兼ね備えています。 MVCやORMなどを「規約優先の考え方」で利用するため、コードを書く手間を省くことができます。 外部のライブラリに依存しないので、単体での利用が可能です。

データベース設計

データベース設計はデータベースの論理的や物理的な部分を特定する工程です。

0グッド

1クリップ

投稿2015/01/18 13:50

WEBサーバーに置くようなWEBサイトを作る際の話です。
データベース設計をする際に、管理者情報とゲストユーザーの情報について、別々のテーブルに保存するか、それとも同じテーブル内で、権限レベルを設定して保存するか、どちらの方がより良いのか、教えてください。
また、そういったデータベース設計について学ぶ際に、特に参考になりそうな書籍やWEBサイト等ありましたら、併せて教えていただけると嬉しいです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

お邪魔致します。
こちらに関してですが、システムの仕様によて異なるのではないでしょうか。

例えば、会員制のWEBサイトを作成する場合は会員のユーザ数を考慮して

公開向け+会員用のサイト(会員ユーザテーブル)
管理用のサイト(管理者用ユーザテーブル)

CakePHP標準のユーザログイン機能を利用する場合、ユーザ管理テーブルが一つに限定されていた気がします。

その為、公開向けの会員サイトを制作しようとした際は、公開向け(会員サイト含む)+管理者サイトの2サイトの実装が必要になります。←マンパワー的にはかなりの負荷です。

また一つのテーブルで情報を管理する場合は、会員ユーザと管理者ユーザが同一のシステムを共存するため作り込みが非常に大変になるのではと思います。
こちらの方法に関しては、社内システムのような一般社員と管理者のような権限で区分する事が出来ますが、通常の会員制サイトの構成では無いともいます。

その為、通常会員サイトを作る場合は、前述の方法を選択された方が良いのではと思います。

投稿2015/01/18 14:28

takayukiinaba

総合スコア1158

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Aneks

2015/01/18 15:17

早速の回答ありがとうございます。 念押しするようで申し訳ないですが、確認させていただきますと、前述の方法というのは、テーブルを分けて保存した方が良い、という意味にとってまちがいないでしょうか?
takayukiinaba

2015/01/18 16:02

言葉足らずで申し訳ありません。 お察しの通り、会員用のテーブルと管理者用のテーブルを分ける方法です。 その場合は、システムが会員サイト用と管理者用で2つ必要なりますが。。。 ですが、基本的な構成であればこの方法が一番簡単ではないかと・・・ CakePHP標準のログイン機能あれば複合的なユーザ条件を切り分ける事が出来ない為、多少カスタマイズが必要だとは思いますが・・・。
Aneks

2015/01/19 14:48

お返事が遅くなってしまい、申し訳ありませんでした。 またしつこく確認してしまい、失礼いたししました。 テーブルの作り方について、よく理解できました。 それらしい方法も見つかったので、それで実装してみようと思います。 ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問