Computer Science, University of Brawijaya Putra Pandu Adikara, S.Kom Data Manipulation Language Basis Data 2.

Slides:



Advertisements
Presentasi serupa
SQL – DML.
Advertisements

Yuswanto Modifikasi Data.
KUMPULAN PERINTAH SQL PENDY.
PERINTAH SQL.
Dasar-dasar SQL soesanto.
Database Create-Retrieve-Update-Delete (CRUD)
PEMROGRAMAN BASIS DATA
SQL.
SISTEM BASISDATA Lasmedi Afuan, ST.,M.Cs. SQL (S RUCTURE Q UERY L ANGUAGE ) Query/SQL : Bahasa standar yang digunakan untuk mengakses basisdata. Standar.
Manajemen Basis Data menggunakan SQL Server
Strctured Query Language
Stored Procedure Basis Data 2.
Internet Programming MySQL
Pemrogramn Berorientasi Obyek MySQL
Jalankan script sql berikut : sekolah.sql
Me-Retrieve Data Menggunakan Pernyataan SQL SELECT
DATA MANIPULATION LANGUAGE (DML)
Pemrograman Visual II Database Management System (DBMS) Oleh: Erna Sri Hartatik, S.Kom
TRIGGER.
Microsoft SQL Server DDL dan DML dasar
Data Definition Language dan Data Manipulation Language
Data Manipulation Language Pertemuan : 4 Basis Data Terapan.
P E R T E M U A N 12 SISTEM BASIS DATA.
Data Types Data Definition Language Referential Constraint SQL Query
SQL (Structure Query Language)
SQL-Aggregate dengan Fungsi GROUP, HAVING dan subQuery
Antonius Wahyu Sudrajat, S. Kom., M.T.I. View Sub Query.
Pengantar basis data PROGRAM STUDI PENDIDIKAN TEKNIK INFORMASI DAN KOMPUTER (PTIK) JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNIK – UNIVERSITAS NEGERI MAKASSAR.
Sistem Basis Data Pertemuan 11 Presented by :
MANAJEMEN BASIS DATA Pertemuan 8 SUBQUERY.
STRUCTURED QUERY LANGUAGE (SQL)
Data Manipulation Language
Data Manipulation Language Presented by : Herianto.
PTIK-13 PERANCANGAN DATABASE (2) MENGOLAH DATA MENJADI INFORMASI Dosen: Arya Yudhi W.,S.Kom.,M.Kom.
Pengenalan Database MySQL
Pertemuan ke-sekian Structure Query Language (SQL) Lanjut
BAB 4 QUERY FORMULATION with SQL
Rekayasa Perangkat Lunak Materi 3 (Database)
TABEL VIRTUAL (VIEW) SYAIFUL HUDA, S.Kom.
DDL, DML.
SQL.
Bahasa query terpan.
SQL (Structure Query Language)
Manajemen Basis Data menggunakan SQL Server
SQL DML Pertemuan 6 dan 7.
Konsep Teknologi Informasi B
SQL (Structured Query Language)
Stucture Query Language
QUERY SQL Modul Query.
SQL OVERVIEW.
Dml(Data manipulation language)
Created By Amir Ali,S.Kom.,M.Kom
Structured Query Language (SQL)
SQL Data Manipulation IK203 Sistem Basis Data Pertemuan #12
Management Information System
Jalankan script sql berikut : sekolah.sql
Structured Query Language
Data Manipulation Language (DML)
Biodata…… Nama : Muhammad Yunus Alamat : Getap Asal : Sakra Lotim
Aplikasi Database Dosen : Sarwo, Skom,.Mkom Url :
EXERCISE DML Part I Buatlah sebuah tabel baru nama = Dosen
Pengenalan mySQL database
SQL.
Stucture Query Language
SQL(SELECT QUERY LANGUAGE)
Stucture Query Language
DATA MANIPULATION LANGUAGE
BAHASA BASIS DATA Data Manipulation Languange
BAHASA BASIS DATA Retreiving Data dan Manipulation Function
Pengantar Teknologi SIM 2 (pertemuan 7)
Transcript presentasi:

Computer Science, University of Brawijaya Putra Pandu Adikara, S.Kom Data Manipulation Language Basis Data 2

DML

Data Manipulation Language  Pada aplikasi database, konsep CRUD:  Create  Insert  Read (Retrieve)  Select  Update (Edit)  Update  Delete  Delete  sama seperti konsep pada programming untuk user interface, Misalnya juga untuk user-permission level aplikasi (user-group/role)

Select  SELECT  Untuk mendapatkan baris-baris record dari suatu tabel atau beberapa tabel sekaligus dengan kondisi tertentu  SELECT-INTO digunakan untuk membuat tabel baru hasil dari query Select select * into ProductTemp from Products  UNION digunakan untuk menggabungkan 2 query dengan definisi kolom yang sama  DISTINCT digunakan untuk mencegah duplikasi sesuai kolom

Select  SELECT dengan kolom kalkulasi USE AdventureWorks2008R2; GO SELECT p.Name AS ProductName, NonDiscountSales = (OrderQty * UnitPrice), Discounts = ((OrderQty * UnitPrice) * UnitPriceDiscount) FROM Production.Product AS p INNER JOIN Sales.SalesOrderDetail AS sod ON p.ProductID = sod.ProductID ORDER BY ProductName DESC; GO

Select  SELECT dengan subquery USE AdventureWorks2008R2; GO SELECT DISTINCT Name FROM Production.Product AS p WHERE EXISTS (SELECT * FROM Production.ProductModel AS pm WHERE p.ProductModelID = pm.ProductModelID AND pm.Name LIKE 'Long- Sleeve Logo Jersey%'); GO SELECT DISTINCT p.LastName, p.FirstName FROM Person.Person AS p JOIN HumanResources.Employee AS e ON e.BusinessEntityID = p.BusinessEntityID WHERE IN (SELECT Bonus FROM Sales.SalesPerson AS sp WHERE e.BusinessEntityID = sp.BusinessEntityID); GO

Select  SELECT dengan menggunakan ROW_NUMBER (ISO SQL:2003) SELECT * FROM ( SELECT ROW_NUMBER() OVER (ORDER BY ProductID ASC) AS row_number, ProductID,SaleDate,SalePrice FROM SalesHistory ) foo WHERE row_number <= 200  Bisa digunakan sebagai limit

Select  Baca lebih lanjut:   Baca juga tentang JOIN

Insert  Insert  Untuk menambah baris pada suatu tabel  Menambahkan data langsung isinya (urut dengan kolomnya)  INSERT INTO table_name VALUES (value1, value2, value3,...)  Menambahkan data dimana isi sesuai kolomnya (bisa tidak urut dengan kolomnya, atau hanya kolom tertentu saja)  INSERT INTO table_name (column1, column2, column3,...) VALUES (value1, value2, value3,...)

Insert  Menambahkan baris pada suatu tabel melalui seleksi INSERT california_authors (au_id, au_lname, au_fname) SELECT au_id, au_lname, au_fname FROM authors WHERE State = 'CA‘  Baca lebih lanjut lagi: us/library/aa933206(SQL.80).aspx

Delete  Delete  Digunakan untuk menghapus record atau himpunan record (sesuai kondisi yang ditentukan) USE AdventureWorks2008R2; GO DELETE FROM Production.ProductCostHistory WHERE StandardCost > ; GO

Delete: Subquery  SQL-2003 Standard subquery USE AdventureWorks2008R2; GO DELETE FROM Sales.SalesPersonQuotaHistory WHERE BusinessEntityID IN (SELECT BusinessEntityID FROM Sales.SalesPerson WHERE SalesYTD > ); GO  Transact-SQL extension USE AdventureWorks2008R2; GO DELETE FROM Sales.SalesPersonQuotaHistory FROM Sales.SalesPersonQuotaHistory AS spqh INNER JOIN Sales.SalesPerson AS sp ON spqh.BusinessEntityID = sp.BusinessEntityID WHERE sp.SalesYTD > ; GO

 Baca lebih lanjut 

Update  Update  Digunakan untuk mengubah record atau himpunan record (sesuai kondisi yang ditentukan) UPDATE authors SET state = 'PC', city = 'Bay City' WHERE state = 'CA' AND city = 'Oakland'

 Baca lebih lanjut  us/library/aa260662(SQL.80).aspx us/library/aa260662(SQL.80).aspx

Constraint

Konsep Dasar Constraint  Entity Integrity  memastikan tidak ada entitas yg sama (duplikasi record/row) dalam satu tabel Primary Key constraint  Referential Integrity  Memastikan record tidak dapat dihapus, apabila digunakan di tabel lain Foreign Key constraint  Entity dan Referential Integrity bersamaan membentuk key integrity

Konsep Dasar Constraint  Domain Integrity  memastikan isi dari suatu kolom terbatas sesuai tipe, format, dan rentang yang dimungkinkan CHECK, UNIQUE, DEFAULT constraint Contoh: –Nama produk tidak boleh NULL. –Nama produk harus unik (unique). –Tanggal pemesanan tidak boleh hari esok. –Jumlah pemesanan produk harus lebih dari nol (0).  User-Defined Integrity  Digunakan untuk business-rule yang tidak masuk di entity, domain, referential integrity

Referential Integrity (lanjutan)  Referential Integrity Constraints  Mendefinisikan suatu aksi yang dilakukan apabila user menghapus atau memperbaharui primary key (dalam relationship primary key-foreign key)  Digunakan untuk menjaga konsistensi baris-baris data antara dua tabel yang saling mempunyai relasi

Referential Integrity (lanjutan)  Referential Integrity Constraints  NO ACTION aksi default bila tidak didefinisikan, bila ada penghapusan/ pengubahan maka akan dibatalkan dan error akan dibangkitkan  CASCADE Semua baris foreign key akan dihapus sesuai baris primary key yang dihapus  SET NULL Semua baris foreign key, nilainya akan berubah menjadi NULL. Syaratnya kolom foreign key harus memperbolehkan nilai NULL  SET DEFAULT Semua baris foreign key, nilainya akan berubah menjadi nilai default Syaratnya kolom foreign key harus mempunyai nilai default

Contoh CREATE TABLE Products ( ProductID TINYINT, ProductDescription VARCHAR(100), CONSTRAINT pk_ProductID PRIMARY KEY (ProductID) ) CREATE TABLE SalesHistory ( SaleID int IDENTITY(1,1) NOT NULL, ProductID TINYINT, SaleDate datetime NULL, SalePrice money NULL, CONSTRAINT pk_SaleID PRIMARY KEY (SaleID) CONSTRAINT fk_SalesHistoryProductID FOREIGN KEY (ProductID) REFERENCES Products(ProductID) ON DELETE CASCADE ON UPDATE CASCADE )

Contoh INSERT INTO Products (ProductID, ProductDescription) SELECT 1, 'BigScreen' UNION ALL SELECT 2, 'Computer' UNION ALL SELECT 3, 'PoolTable' GO SMALLINT = 1 WHILE <=100) BEGIN INSERT INTO SalesHistory(ProductID, SaleDate, SalePrice) VALUES(1, '3/11/1919'), DATEPART(ms, GETDATE()) )) INSERT INTO SalesHistory(ProductID, SaleDate, SalePrice) VALUES(2, '3/11/1927'), DATEPART(ms, GETDATE()) )) INSERT INTO SalesHistory(ProductID, SaleDate, SalePrice) VALUES(3, '3/11/1908'), DATEPART(ms, GETDATE()) )) + 1 END

Contoh  Apa yang terjadi bila pada tabel Products, baris dengan ProductID=1 diganti menjadi ProductID=4?  Apa yang terjadi bila pada tabel Products, baris dengan ProductID=4 dihapus?  Bila ON DELETE CASCADE diubah menjadi ON DELETE SET NULL atau SET DEFAULT atau NO ACTION apa yang terjadi?

Domain Integrity: Unique Constraint  Unique constraint menggunakan index untuk memastikan suatu kolom (atau himpunan kolom) tidak mempunyai isi yang sama (terduplikasi)  Column constraint CREATE TABLE Products_2 ( ProductID int PRIMARY KEY, ProductName nvarchar (40) Constraint IX_ProductName UNIQUE )  Table constraint CREATE TABLE Products_2 ( ProductID int PRIMARY KEY, ProductName nvarchar (40), CONSTRAINT IX_ProductName UNIQUE(ProductName) )

Domain Integrity: Unique Constraint  Untuk menambahkan constraint menggunakan alter table: CREATE TABLE Products_2 ( ProductID int PRIMARY KEY, ProductName nvarchar (40) ) ALTER TABLE Products_2 ADD CONSTRAINT IX_ProductName UNIQUE (ProductName)  Contoh error ketika ada pelanggaran constraint Server: Msg 1505, Level 16, State 1, Line 1 CREATE UNIQUE INDEX terminated because a duplicate key was found for index ID 2. Most significant primary key is 'Hamburger'. Server: Msg 1750, Level 16, State 1, Line 1 Could not create constraint. See previous errors. The statement has been terminated.

Domain Integrity: Check Constraint  Check Constraint berisi ekspresi yang akan dievaluasi ketika menambah atau mengubah suatu record  Jika evaluasi ekspresi bernilai false, maka record tidak akan disimpan dalam database  Membuat check constraint sama seperti dlm membuat klausa WHERE  Dapat menggunakan operator (, =,<>,=) serta BETWEEN, IN, LIKE, NULL dan kombinasi AND, OR  Terdiri dari dua bagian:  Name  nama dari constraint  Predicate  kondisi aktual yang digunakan dalam pengecekan

Domain Integrity: Check Constraint  Column constraint CREATE TABLE Products_2 ( ProductID int PRIMARY KEY, UnitPrice money CHECK(UnitPrice > 0 AND UnitPrice < 100) )  Table constraint CREATE TABLE Customers_2 ( CustomerID int, Phone varchar(24), Fax varchar(24), CONSTRAINT CK_PhoneOrFax CHECK(Fax IS NOT NULL OR PHONE IS NOT NULL) )

Batasan Check Constraint  Ada batasan dalam check constraint:  Tidak bisa mereferensi/merujuk ke row yang berbeda dalam satu tabel  Tidak bisa mereferensi/merujuk ke kolom pada tabel yang berbeda

Domain Integrity: Default Constraint  Default constraint digunakan sebagai nilai default pada suatu kolom ketika dalam statement INSERT isi nilainya tidak ditetapkan CREATE TABLE Orders_2 ( OrderID int IDENTITY NOT NULL, EmployeeID int NOT NULL, OrderDate datetime NULL DEFAULT(GETDATE()), Freight money NULL DEFAULT (0) CHECK(Freight >= 0), ShipAddress nvarchar (60) NULL DEFAULT('NO SHIPPING ADDRESS'), EnteredBy nvarchar (60) NOT NULL DEFAULT(SUSER_SNAME()) ) INSERT INTO Orders_2 (EmployeeID, Freight) VALUES(1, NULL) ???