- person Penulis:
-
Dimas Maryanto
PT. Tabeldata Informatika
- account_balance_wallet Donasi via:
- Saweria a/n Dimas Maryanto
- lock_open Join Premium Members:
- Udemy.com
-
Daftar Materi
-
1. Pengenalan Oracle Database 10
-
1. Silabus Belajar RDBMS Oracle 18c
2. Pengenalan Oracle Database 18c
3. Konsep User dan Schema di Oracle Database 18c
4. Interface untuk Oracle Database
5. Database Interaction dengan SQL
6. Persiapan install Oracle Database 18c
7. Install Oracle 18c XE untuk Windows 10
8. Install Oracle 18c XE untuk Linux
9. Install Oracle 18c XE dengan Docker
10. Install Database Editor untuk Oracle 18c
-
2. SQL - Select Statement 9
-
1. Persiapan Sebelum mulai belajar
2. Aturan Penulisan SQL pada Oracle Database
3. Data Types di Oracle Database
4. Select Statement dalam SQL
5. Pemberian alias pada column dan table
6. Operation Arithmetic di Oracle
7. Menggabungkan column dengan concatnation
8. Handle Null value dengan Coalesce
9. Menghilangkan nilai redundansi dengan klausa Distinct
-
3. SQL - Select with where clause 10
-
1. Klausa where untuk filter data di Oracle
2. Comparison Predicate pada klausa where di Oracle
3. Like Predicate pada klausa where di Oracle
4. Between Predicate pada klausa where di Oracle
5. Null Conditions pada klausa where di Oracle
6. In Predicates pada klausa where di Oracle
7. Exists Condition pada klausa where di Oracle
8. Not Predicate pada klausa where di Oracle
9. Combine Logical pada klausa where di Oracle
10. Mengurutkan data dengan klausa ORDER BY di Oracle
-
4. SQL - Functions 11
-
1. Single Row Function di Oracle
2. Character Single Row Function di Oracle
3. Number Single Row Function di Oracle
4. Date & Time Single Row Function di Oracle
5. Conversion Single Row Function di Oracle
6. Casting Build-In Data Type di Oracle
7. Null-Related Single Row Function
8. Aggregate Functions
9. Klausa Group By di Oracle
10. Where clause dengan Group By Function
11. Having clause dengan Group By Function
-
5. SQL - Join Tables 6
-
6. SQL - Sub Queries 12
-
1. Sub Query di Oracle
2. Sub Query single row result dengan where clause
3. Handle Sub Query Multiple rows Result dengan where operator
4. In Predicates dengan Sub Query di Oracle
5. ANY & SOME dengan Sub Query di Oracle
6. ALL Operator dengan Sub Query di Oracle
7. Sub Query Correlate di Oracle
8. Sub Query EXIST Predicates di Oracle
9. Pairwise Sub Query di Oracle
10. Sub Query Inline View di Oracle
11. Paginate dengan Sub Query di Oracle versi lama
12. Pagination dengan fetch dan offset
-
7. SQL - Expressions 2
-
8. SQL - Data Manipulation Language 11
-
1. Data Manipulation Language (DML)
2. DML - Insert Statement di Oracle
3. DML - Update Statement di Oracle
4. DML - Delete Statement di Oracle
5. DML - Merge Statement di Oracle
6. Transaction Control Language (TCL)
7. TCL - Commit Transaction di Oracle
8. TCL - Rollback Transaction di Oracle
9. TCL - Savepoint di Oracle
10. TCL - Concurrent Transaction
11. TCL - Locking Transaction di Oracle
-
9. SQL - Data Definition Language 19
-
1. Data Definition Language (DDL) di Oracle
2. DDL - Static Data Dictionary View
3. DDL - Membuat Tabel di Oracle
4. DDL - Merubah struktur table
5. DDL - Menghapus table dengan DROP
6. DDL - Truncate Table
7. DDL - Purge Table & Recyclebin
8. DDL - Macam-macam Constraint di Oracle
9. DDL - Not Null Constraint
10. DDL - Unqiue Constraint
11. DDL - Check Constraint
12. DDL - Primary Key Constraint
13. DDL - Foreign Key Constraint
14. DDL - Foreign Key Constraint dengan Options
15. DDL - Enabled, Disabled & Drop Constraints
16. DDL - Deferring Constraint Checks
17. DDL - View di Oracle
18. DDL - Sequences di Oracle
19. Default value untuk Primary Key di Oracle
-
10. Indexing 5
-
11. DDL - User Management 8
-
12. Monitor database activity 5
-
13. Database Design 8
- Lastest Posts
- 09 Apr 23 Working with Deployment object
- 26 Feb 23 Study cases: Microservice apps (...
- 05 Feb 23 Welcome to the Nutanix HCF (Hybr...
- 04 Feb 23 Silabus SRE - Nutanix AHV: Pemul...
- 17 Jan 23 What is Workload Resources?
- 17 Jan 23 Overview Kubernetes Workloads re...
- 15 Jan 23 Getting started with Transaction...
- 14 Jan 23 Overview of Concurrency Control
- 14 Jan 23 Time your practice (part 3)
- 08 Jan 23 Cleanup Data from Table
DDL - Grouping Privileges dengan Roles
Sebuah User Role yaitu kelompok dari privileges yang di terapkan ke user. Hal ini bisa mempermudah jika memiliki banyak user yang memiliki kesamaan privileges.
Functionality of Roles
Roles sangat berguna untuk mempercepat dan mempermudah memberikan hak akses kepada sebuah user atau kebeberapa user. berikut adalah kegunaan dari Roles:
- Suatu role bisa digunakan untuk system atau object privileges.
- Role bisa di terapkan kepada user/schema database
- Suatu role bisa di granted ke role lainnya, tetepi tidak bisa di terapkan ke role diri sendiri karena akan menyebabkan circular dependency.
Advantages using User Roles
Keutungan menggunakan User Roles, diantaranya:
- Mengurangi administration privilages
- Dynamic privilages management
Oracle Database Predefined Roles
Oracle Database juga telah menyediakan beberapa role yang predefined seperti:
AUDIT_ADMIN
. Digunakan untuk memberikan hak akses kepada user untuk melakukan monitoring database activityCONNECT
. Digunakan untuk memberikan hak akses kepada user untuk bisa logged in ke system databaseDBA
.CDB_DBA
danPDB_DBA
, digunakan untuk memberikan user tersebut hak aksel level administrationIMP_FULL_DATABASE
,EXP_FULL_DATABASE
. digunakan untuk memberikan user tersebut hak akses melakukan import dan export databaseRESOURCES
. digunakan untuk memberikan hak akses sepertiCREATE CLUSTER
,CREATE INDEXTYPE
,CREATE OPERATOR
,CREATE PROCEDURE
,CREATE SEQUENCE
,CREATE TABLE
,CREATE TRIGGER
, andCREATE TYPE
Dan masih banyak lagi, silahkan baca disini
Menggunakan predefined role ke user:
Jika di jalankan maka hasilnya seperti berikut:
bash> sqlplus system/passwordnyaOracle18@XEPDB1
SQL*Plus: Release 18.0.0.0.0 - Production on Sat Mar 13 13:20:21 2021
Version 18.4.0.0.0
Copyright (c) 1982, 2018, Oracle. All rights reserved.
Last Successful login time: Sat Mar 13 2021 13:19:22 +00:00
Connected to:
Oracle Database 18c Express Edition Release 18.0.0.0.0 - Production
Version 18.4.0.0.0
SQL> create user sales
identified by sales2018
default tablespace users
quota 10 m on users
account unlock;
User created.
SQL> grant connect, resource, exp_full_database
to sales;
Grant succeeded.
SQL> select GRANTEE, GRANTED_ROLE, DEFAULT_ROLE
from DBA_ROLE_PRIVS
WHERE GRANTEE = 'SALES';
GRANTEE GRANTED_ROLE DEF
---------- -------------------- ---
SALES RESOURCE YES
SALES CONNECT YES
SALES EXP_FULL_DATABASE YES
SQL> conn sales/sales2018@XEPDB1
Connected.
SQL> create table test_table(
id varchar2(64) not null primary key,
nama varchar2(100)
);
Table created.
SQL>
Creation of Roles
Untuk membuat role, membutuhkan CREATE ROLE
pada system privileges-nya. Setelah role terbuat kita bisa assign ke user tertentu, sebagai contoh sebagai berikut:
Jika di jalankan maka hasilnya seperti berikut:
bash> sqlplus system/passwordnyaOracle18@XEPDB1
SQL*Plus: Release 18.0.0.0.0 - Production on Sat Mar 13 13:20:21 2021
Version 18.4.0.0.0
Copyright (c) 1982, 2018, Oracle. All rights reserved.
Last Successful login time: Sat Mar 13 2021 13:19:22 +00:00
Connected to:
Oracle Database 18c Express Edition Release 18.0.0.0.0 - Production
Version 18.4.0.0.0
SQL> create role app_developer NOT IDENTIFIED;
Role created.
SQL> grant connect, resource, exp_full_database, imp_full_database
to app_developer;
Grant succeeded.
SQL> create user offices
identified by project2018
default tablespace users
quota 10 m on users
account unlock;
User created.
SQL> grant app_developer
to offices;
Grant succeeded.
Informasi privileges dalam Roles
Untuk menampilkan informasi privileges dalam suatu roles, berikut contohnya
Jika di jalankan, maka hasilnya seperti berikut:
SQL> select ROLE_ID, PASSWORD_REQUIRED, AUTHENTICATION_TYPE, ORACLE_MAINTAINED
from DBA_ROLES
where ROLE IN ('APP_DEVELOPER')
ORDER BY ROLE;
ROLE_ID PASSWORD AUTHENTICAT O
---------- -------- ----------- -
116 NO NONE N
SQL> select GRANTEE, GRANTED_ROLE, DEFAULT_ROLE
from DBA_ROLE_PRIVS
WHERE GRANTEE = 'OFFICES';
GRANTEE GRANTED_ROLE DEF
-------------------- -------------------- ---
OFFICES APP_DEVELOPER YES
SQL> select GRANTED_ROLE, ADMIN_OPTION, DEFAULT_ROLE
from DBA_ROLE_PRIVS
where GRANTEE in ('APP_DEVELOPER');
GRANTED_ROLE ADM DEF
-------------------- --- ---
CONNECT NO YES
IMP_FULL_DATABASE NO YES
RESOURCE NO YES
EXP_FULL_DATABASE NO YES
SQL> select ROLE, PRIVILEGE
from ROLE_SYS_PRIVS
where ROLE in (select GRANTED_ROLE
from DBA_ROLE_PRIVS
where GRANTEE in ('APP_DEVELOPER'));
ROLE PRIVILEGE
------------------------------ ----------------------------------------
CONNECT SET CONTAINER
CONNECT CREATE SESSION
IMP_FULL_DATABASE ADMINISTER SQL MANAGEMENT OBJECT
IMP_FULL_DATABASE CREATE ANY SQL PROFILE
IMP_FULL_DATABASE ALTER PROFILE
IMP_FULL_DATABASE DROP ANY PROCEDURE
105 rows selected.
REVOKE
role dari User
Untuk mencabut role dari user, kita bisa menggunakan perintah seperti berikut:
Menghapus role
Untuk menghapus role, kita bisa menggunakan perintah seperti berikut:
Yuk simak juga videonya,
Dan jika temen-temen belajar hal baru kali ini jangan lupa buat Like, Subcribe, dan Share ke temen kalian. Terimakasih!!!