У меня есть нормализованная база данных с внешними ключами/первичными ключами, дающими одну-две базы данных.
Я планирую получить доступ к этой базе данных с помощью PHP для основного интерфейса/бэкэнд-дисплея. Теперь мой вопрос исходит из этих двух рассмотренных запросов:
CREATE VIEW `view` AS
SELECT
functiondetails.Detail,
functionnames.ID,
functionnames.FunctionName,
functionnames.Catogory
FROM functiondetails
INNER JOIN functionnames ON functiondetails.AsscID = functionnames.ID
или
SELECT
functiondetails.Detail,
functionnames.ID,
functionnames.FunctionName,
functionnames.Catogory
FROM functiondetails
INNER JOIN functionnames ON functiondetails.AsscID = functionnames.ID
В запросе нет ошибки, поскольку я запускал оба без проблем, но мой общий вопрос:
если я планирую постоянно ссылаться на информацию из моей базы данных. Не было бы проще создать представление, которое затем будет обновлять все время с помощью новой информации, или было бы лучше, если бы второй запрос был на моем фактическом php. Пример:
$Query = $MySQli->prepare("
SELECT
functiondetails.Detail,
functionnames.ID,
functionnames.FunctionName,
functionnames.Catogory
FROM functiondetails
INNER JOIN functionnames ON functiondetails.AsscID = functionnames.ID
")
$Query->execute();
$Results = $Query->fetch_results();
$Array = $Results->fetch_array(MYSQLI_ASSOC);
Или выбрать из моего представления?
$Query = $MySQLi->prepare("SELECT * FROM `view`");
$Query->execute();
$Results = $Query->fetch_results();
$Array = $Results->fetch_array(MYSQLI_ASSOC);
Итак, какой из них был бы лучшим методом для запроса моей базы данных?