Поиск
Архивы
Админ
Архив мая, 2010
Группы привилегий, группы пользователей sql
Вы не должны ограничивать себя предоставлением одиночной привилегии отдельному пользователю командой GRANT. Списки привилегий или пользователей, отделяемых запятыми, являются совершенно приемлемыми. Stephen может предоставить и SELECT и INSERT в таблице Заказов для Adrian GRANT SELECT, INSERT ON Orders TO Adrian; или и для Adrian и для Diane GRANT SELECT, INSERT ON Orders TO Adrian, Diane; Когда привилегии и пользователи... ДАЛЕЕ...
Кто что может делать в базе данных sql
Пользователи Каждый пользователь в среде SQL имеет специальное идентификационное имя или номер. Терминология везде разная, но мы выбрали (следуя ANSI) ссылку на имя или номер как на Идентификатор (ID) доступа. Команда, посланная серверу базы данных, ассоциируется с определенным пользователем, или, иначе, специальным Идентификатором доступа. Поскольку это относится... ДАЛЕЕ...
Проверка представлений, которые базируются на других представлениях sql
Еще одно надо упомянуть относительно предложения WITH CHECK OPTION в ANSI: оно не делает каскадированного изменения: Оно применяется только в представлениях, в которых оно определено, но не в представлениях основанных на этом представлении. Например, в предыдущем примере CREATE VIEW Highratings AS SELECT cnum, rating FROM Customers WHERE rating = 300 WITH CHECK OPTION; попытка вставить или модифицировать значение... ДАЛЕЕ...
Предикаты и исключенные поля sql
Похожая проблема, которую вы должны знать, включает в себя вставку строк в представление с предикатом, базирующемся не на всех полях таблицы. Например, может показаться разумным создать Londonstaff подобно этому: CREATE VIEW Londonstaff AS SELECT snum, sname, comm FROM Salespeople WHERE city = 'London'; В конце концов, зачем включать значение city, если все значения city будут одинаковыми. А как будет выглядеть... ДАЛЕЕ...
Проверка значений, помещаемых в представление sql
Другой вывод о модифицируемости представления тот, что вы можете вводить значения которые "проглатываются" (swallowed) в базовой таблице. Рассмотрим такое представление: CREATE VIEW Highratings AS SELECT cnum, rating FROM Customers WHERE rating = 300; Это — представление модифицируемое. Оно просто ограничивает ваш доступ к определенным строкам и столбцам в таблице. Предположим, что вы вставляете... ДАЛЕЕ...
Что является модифицируемым представлением sql
Имеются некоторые примеры модифицируемых представлений и представлений "только чтение": CREATE VIEW Dateorders (odate, ocount) AS SELECT odate, COUNT (*) FROM Orders GROUP BY odate; Это — представление "только чтение" из-за присутствия в нем агрегатной функции и GROUP BY. CREATE VIEW Londoncust AS SELECT * FROM Customers WHERE city = 'London'; А это — представление модифицируемое. CREATE VIEW SJsales (name, number, percentage) AS SELECT sname, snum, comm 100 FROM Salespeople WHERE... ДАЛЕЕ...
Определение модифицируемости представления sql
Если команды модификации могут выполняться в представлении, представление как сообщалось, будет модифицируемым; в противном случае оно предназначено только для чтения при запросе. Не противореча этой терминологии, мы будем использовать выражение "модифицируемое представление" (updating a view), что означает возможность выполнения в представлении любой из трех... ДАЛЕЕ...
Модифицирование представления sql
Один из наиболее трудных и неоднозначных аспектов представлений — непосредственное их использование с командами модификации DML. Как упомянуто в предыдущей главе, эти команды фактически воздействуют на значения в базовой таблице представления. Это является некоторым противоречием. Представление состоит из результатов запроса, и когда вы модифицируете... ДАЛЕЕ...
Чего не могут делать представления sql
Имеются большое количество типов представлений (включая многие из наших примеров в этой главе), которые являются доступными только для чтения. Это означает, что их можно запрашивать, но они не могут подвергаться действиям команд модификации. Мы будем рассматривать эту тему в Главе 21. Имеются также некоторые виды запросов, которые не допустимы в определениях... ДАЛЕЕ...
Представления и подзапросы sql
Представления могут также использовать и подзапросы, включая соотнесенные подзапросы. Предположим, ваша компания предусматривает премию для тех продавцов, которые имеют заказчика с самой высокой суммой Заказа для любой указанной даты. Вы можете проследить эту информацию с помощью представления: CREATE VIEW Elitesalesforce AS SELECT b.odate, a.snum, a.sname, FROM Salespeople a, Orders b WHERE a.snum... ДАЛЕЕ...
