Update index.md (#27760)

Structure and grammatic changes
This commit is contained in:
Vladyslav Dvorak
2019-02-08 15:04:29 +01:00
committed by Gregory Gubarev
parent 5ecf5431cf
commit a4567aaa8b

View File

@ -41,25 +41,25 @@ SELECT Customers.CustomerName, Orders.OrderID
``` ```
### Что является результатом следующей команды? ### Что является результатом следующей команды?
```
\`\` \` DROP VIEW view\_name DROP VIEW view_name
``` ```
Here it'll be an error because we can't perform a DML operation on a view. Here it'll be an error because we can't perform a DML operation on a view.
### Can we perform a rollback after using ALTER command? ### Can we perform a rollback after using ALTER command?
No, because ALTER is a DDL command and Oracle server performs an automatic COMMIT when the DDL statements are executed. No, because ALTER is a DDL command and Oracle server performs an automatic COMMIT when the DDL statements are executed.
### Which is the only constraint that enforces rules at column level? ### Which is the only constraint that enforces rules at column level?
NOT NULL is the only constraint that works at the column level. NOT NULL is the only constraint that works at the column level.
### What are the pseudocolumns in SQL? Give some examples? ### What are the pseudocolumns in SQL? Give some examples?
A pseudocolumn is a function which returns a system generated value. The reason it is known as so because a pseudocolumn is an Oracle assigned value used in the same context as an Oracle database column but not stored on disk. A pseudocolumn is a function which returns a system generated value. The reason it is known as so because a pseudocolumn is an Oracle assigned value used in the same context as an Oracle database column but not stored on disk.
```Вот некоторые примеры:
ROWNUM, ROWID, USER, CURRVAL, NEXTVAL и т.д.
``` ```
Вот некоторые примеры: ROWNUM, ROWID, USER, CURRVAL, NEXTVAL и т. Д. \`\` \`
### Создайте пользователя my723acct с паролем kmd26pt. Используйте пользовательские _данные и временные табличные пространства данных, предоставляемые PO8, и предоставите этому пользователю 10M пространства для хранения в пользовательских_ данных и 5M пространства для хранения во временных\_данных. ### Создайте пользователя my723acct с паролем kmd26pt. Используйте пользовательские _данные и временные табличные пространства данных, предоставляемые PO8, и предоставите этому пользователю 10M пространства для хранения в пользовательских_ данных и 5M пространства для хранения во временных\_данных.
`sql CREATE USER my723acct IDENTIFIED BY kmd26pt DEFAULT TABLESPACE user_data TEMPORARY TABLESPACE temporary_data QUOTA 10M on user_data QUOTA 5M on temporary_data` `sql CREATE USER my723acct IDENTIFIED BY kmd26pt DEFAULT TABLESPACE user_data TEMPORARY TABLESPACE temporary_data QUOTA 10M on user_data QUOTA 5M on temporary_data`
@ -76,50 +76,73 @@ Here it'll be an error because we can't perform a DML operation on a view.
`sql GRANT role_tables_and_views TO anny, rita` `sql GRANT role_tables_and_views TO anny, rita`
### Создайте пользователя my723acct с паролем kmd26pt. Используйте пользовательские _данные и временные табличные пространства данных, предоставляемые PO8, и предоставите этому пользователю 10M пространства для хранения в пользовательских_ данных и 5M пространства для хранения во временных\_данных. ### Создайте пользователя my723acct с паролем kmd26pt. Используйте user_data и временные табличные пространства данных, предоставляемые PO8, и предоставите этому пользователю 10M пространства для хранения в user_data и 5M пространства для хранения в temporary_data.
``` sql
`sql CREATE USER my723acct IDENTIFIED BY kmd26pt DEFAULT TABLESPACE user_data TEMPORARY TABLESPACE temporary_data QUOTA 10M on user_data QUOTA 5M on temporary_data` CREATE USER my723acct IDENTIFIED BY kmd26pt
DEFAULT TABLESPACE user_data
### Создайте _таблицы_ роли ролей and\_views. TEMPORARY TABLESPACE temporary_data
QUOTA 10M on user_data QUOTA 5M on temporary_data
`sql CREATE ROLE role_tables_and_views` ```
### Создайте ### Create the role role_tables_and_views.
``` sql
CREATE ROLE role_tables_and_views
```
### Предоставьте роли предыдущего вопроса привилегии для подключения к базе данных и привилегии для создания таблиц и представлений. ### Предоставьте роли предыдущего вопроса привилегии для подключения к базе данных и привилегии для создания таблиц и представлений.
Привилегия подключения к базе данных - CREATE SESSION Привилегия создания таблицы - CREATE TABLE Привилегия создания представления - CREATE VIEW `sql GRANT Create session, create table, create view TO role_tables_and_views` Привилегия подключения к базе данных - CREATE SESSION
Привилегия создания таблицы - CREATE TABLE
Привилегия создания представления - CREATE VIEW
``` sql
GRANT Create session, create table, create view TO role_tables_and_views
```
### Предоставьте предыдущую роль в вопросе пользователям anny и rita ### Предоставьте предыдущую роль в вопросе пользователям anny и rita
``` sql
`sql GRANT role_tables_and_views TO anny, rita` GRANT role_tables_and_views TO anny, rita
```
### Напишите команду для изменения пароля пользователя rita от abcd до dfgh ### Напишите команду для изменения пароля пользователя rita от abcd до dfgh
``` sql
`sql ALTER USER rita IDENTIFIED BY dfgh` ALTER USER rita IDENTIFIED BY dfgh
```
### Пользователи rita и anny не имеют привилегий SELECT в таблице INVENTORY, созданной SCOTT. Напишите команду, чтобы позволить SCOTT предоставлять пользователям SELECT priviliges в этих таблицах. ### Пользователи rita и anny не имеют привилегий SELECT в таблице INVENTORY, созданной SCOTT. Напишите команду, чтобы позволить SCOTT предоставлять пользователям SELECT priviliges в этих таблицах.
``` sql
`sql GRANT select ON inventory TO rita, anny` GRANT select ON inventory TO rita, anny
```
### Пользователь rita был передан и больше не нуждается в привилегии, предоставленной ей через _таблицы_ ролевой роли and\_views. Напишите команду, чтобы удалить ее из ее предыдущих заданий, за исключением того, что она все еще могла подключиться к базе данных. ### Пользователь rita был передан и больше не нуждается в привилегии, предоставленной ей через _таблицы_ ролевой роли and\_views. Напишите команду, чтобы удалить ее из ее предыдущих заданий, за исключением того, что она все еще могла подключиться к базе данных.
``` sql
`sql REVOKE select ON scott.inventory FROM rita REVOKE create table, create view FROM rita` REVOKE select ON scott.inventory FROM rita
REVOKE create table, create view FROM rita
```
### Пользователь rita, который был переведен, теперь переезжает в другую компанию. Поскольку созданные ею объекты больше не используются, напишите комманд, чтобы удалить этого пользователя и все ее объекты. ### Пользователь rita, который был переведен, теперь переезжает в другую компанию. Поскольку созданные ею объекты больше не используются, напишите комманд, чтобы удалить этого пользователя и все ее объекты.
Здесь параметр CASCADE необходим для удаления всех объектов пользователя в базе данных. \`\` \`sql Здесь параметр CASCADE необходим для удаления всех объектов пользователя в базе данных.
DROP USER Рита КАСКАД ``` sql
DROP USER rita CASCADE
```
### Пользователь rita был передан и больше не нуждается в привилегии, предоставленной ей через _таблицы_ ролевой роли and\_views. Напишите команду, чтобы удалить ее из ее предыдущих заданий, за исключением того, что она все еще могла подключиться к базе данных. ### Пользователь rita был передан и больше не нуждается в привилегии, предоставленной ей через _таблицы_ ролевой роли and\_views. Напишите команду, чтобы удалить ее из ее предыдущих заданий, за исключением того, что она все еще могла подключиться к базе данных.
``` sql
`sql REVOKE select ON scott.inventory FROM rita REVOKE create table, create view FROM rita` REVOKE select ON scott.inventory FROM rita
REVOKE create table, create view FROM rita
```
### Пользователь rita, который был переведен, теперь переезжает в другую компанию. Поскольку созданные ею объекты больше не используются, напишите комманд, чтобы удалить этого пользователя и все ее объекты. ### Пользователь rita, который был переведен, теперь переезжает в другую компанию. Поскольку созданные ею объекты больше не используются, напишите комманд, чтобы удалить этого пользователя и все ее объекты.
Здесь параметр CASCADE необходим для удаления всех объектов пользователя в базе данных. \`\` \`sql Здесь параметр CASCADE необходим для удаления всех объектов пользователя в базе данных.
DROP USER Рита КАСКАД ``` sql
DROP USER rita CASCADE
``` ```
### Write SQL query to find the nth highest salary from table. ### Write SQL query to find the nth highest salary from table.
``` sql
SELECT TOP 1 Salary
FROM (
SELECT DISTINCT TOP N Salary
FROM Employee
ORDER BY Salary DESC
)
ORDER BY Salary ASC
``` ```
SQL
ВЫБЕРИТЕ ТОП 1 Зарплата ОТ ( SELECT DISTINCT TOP N Зарплата ОТ сотрудника ЗАКАЗАТЬ Зарплата DESC ) ЗАКАЗАТЬ ЗАРУБЕЖЬЮ ASC \`\` \`