Emrah UYSAL 1

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "Emrah UYSAL 1"

Transkript

1 ORACLE DERS 3 SUBQUERIES(ALT SORGULAR) Alt sorgular yani subqueries bir alt sorgudan dönen sonuçların üst tarafta bulunan sql cümlesine referans olması ile oluşur. Alt sorgular bize şu durumlarda lazım olur,örneğin x isimli bir personelin maaşından daha yüksek maaşlı bir personelin bilgini bulmada,ortalama değerin altında yada üstündeki değerleri bulmada. Syntax: SELECT select_list FROM table WHERE expr operator (SELECT select_list FROM table); Alt sorgu mantığında ilk önce alt sorgu çalışır daha sonra üst sorgu çalışır. SQL > SELECT last_name WHERE salary > (SELECT salary WHERE last_name = Abel ); Yukarıdaki sorgu Abel in maşından daha yüksek maaşlı personelin soyadlarını listelemektedir. Single Row Subquery Bu tür subquerylerde alt sorgudan tek kayıt döner ve karşılaştırma olarak aşağıdaki operatörler kullanılır. Emrah UYSAL 1

2 SQL > SELECT last_name, job_id WHERE job_id = (SELECT job_id WHERE employee_id = 141); SQL > SELECT last_name, job_id, salary WHERE job_id = (SELECT job_id WHERE employee_id = 141) AND salary > (SELECT salary WHERE employee_id = 143); SQL > SELECT last_name, job_id, salary WHERE salary = (SELECT MIN(salary) ); SQL > SELECT department_id, MIN(salary) GROUP BY department_id HAVING MIN(salary) > (SELECT MIN(salary) WHERE department_id = 50); Emrah UYSAL 2

3 SQL > SELECT employee_id, last_name WHERE salary = (SELECT MIN(salary) GROUP BY department_id); ERROR at line 4: ORA-01427: single-row subquery returns more than one row SQL > SELECT last_name, job_id WHERE job_id = (SELECT job_id WHERE last_name = Haas ); no rows selected MULTIPLE ROW SUBQUERY Bu tür sorgular ise subqueryden dönen birden fazla kaydın üst sorgu atarfından yorumlanması ile oluşur.bu tür sorgularda aşağıdaki operatörler kullanılır. SQL > SELECT last_name, salary, department_id WHERE salary IN (SELECT MIN(salary) GROUP BY department_id); Emrah UYSAL 3

4 Aşağıdaki sorgu aslında mantık olarak yukarıdaki sorgu ile aynı işlevi görür,ama yukarıdaki sorguyu kullanmak daha akıllıcadır. SQL > SELECT last_name, salary, department_id WHERE salary IN (2500, 4200, 4400, 6000, 7000, 8300, 8600, 17000); ANY OPERATÖRÜ SQL > SELECT employee_id, last_name, job_id, salary WHERE salary < ANY (SELECT salary WHERE job_id = IT_PROG ) AND job_id <> IT_PROG ; <ANY nin anlamı maximumdan daha düşük >ANY nin anlamı minimumdan daha büyük. ALL OPERATÖRÜ SQL > SELECT employee_id, last_name, job_id, salary WHERE salary < ALL (SELECT salary WHERE job_id = IT_PROG ) AND job_id <> IT_PROG ; >ALL nin anlamı maximumdan daha büyük <ALL nin anlamı minimumdan daha düşük. Emrah UYSAL 4

5 ALT SORGULARDAKİ NULL OPERATÖRÜ Eğer alt sorgulardan null dönüyorsa üst tarafı negatif olarak etkileyeceği için bazen olumsuz sonuçlar alabilemkteyiz. SQL > SELECT emp.last_name emp WHERE emp.employee_id NOT IN (SELECT mgr.manager_id mgr); no rows selected Bu sorunu aşmak istiyorsak; SQL > SELECT last_name WHERE employee_id NOT IN (SELECT manager_id WHERE manager_id IS NOT NULL); TABLO MANİPLASYONLARI İNSERT OPERATÖRÜ İnsert operatörü genellikle tabloya yeni kayıt eklemek için kullanılmaktadır. SYNTAX: INSERT INTO table [(column [, column...])] VALUES (value [, value...]); Emrah UYSAL 5

6 SQL > INSERT INTO departments(department_id, department_name, manager_id, location_id) VALUES (70, Public Relations, 100, 1700); 1 row created. SQL > INSERT INTO departments (department_id, department_name ) VALUES (30, Purchasing ); 1 row created. SQL > INSERT INTO departments VALUES (100, Finance, NULL, NULL); 1 row created. Yukarıdaki örnekte görüeleceği gibi eğer tablonun bütün alanları için kayıt eklenecekse tablo için kolon isimlerini yazmaya gerek yoktur. SQL > INSERT INTO employees (employee_id, first_name, last_name, , phone_number, hire_date, job_id, salary, commission_pct, manager_id, department_id) VALUES (113, Louis, Popp, LPOPP, , SYSDATE, AC_ACCOUNT, 6900, NULL, 205, 100); 1 row created. SQL > SELECT employee_id, last_name, job_id, hire_date, commission_pct WHERE employee_id = 113; SQL > INSERT INTO employees VALUES (114, Den, Raphealy, DRAPHEAL, , TO_DATE( FEB 3, 1999, MON DD, YYYY ), AC_ACCOUNT, 11000, NULL, 100, 30); 1 row created. Emrah UYSAL 6

7 BAŞKA BİR TABLODAN VERİ ÇEKMEK Eğer başka bir tablodan veri almak istiyorsak aşağıdaki gibi sql cümlelerini yazmak yeterlidir. SQL > INSERT INTO sales_reps(id, name, salary, commission_pct) SELECT employee_id, last_name, salary, commission_pct WHERE job_id LIKE %REP% ; 4 rows created. UPDATE OPERATÖRÜ Update operatörü bir tablodaki kayıtları güncellemek yani yenileri ile değiştirmek için kullanılır. SYNTAX: UPDATE table SET column = value [, column = value,...] [WHERE condition]; SQL > UPDATE employees SET department_id = 70 WHERE employee_id = 113; 1 row updated. SQL > UPDATE copy_emp SET department_id = 110; 22 rows updated. SQL > UPDATE employees SET job_id = (SELECT job_id WHERE employee_id = 205), salary = (SELECT salary WHERE employee_id = 205) WHERE employee_id = 114; 1 row updated. SQL > UPDATE copy_emp SET department_id = (SELECT department_id WHERE employee_id = 100) WHERE job_id = (SELECT job_id WHERE employee_id = 200); 1 row updated. Emrah UYSAL 7

8 Bazen iki tablo arasında constrant ilişkisi varsa sistem bu durumlara kızabilir.bu durumlara dikkat etmek gereklidir. SQL > UPDATE employees SET department_id = 55 WHERE department_id = 110; UPDATE employees * ERROR at line 1: ORA-02291: integrity constraint (HR.EMP_DEPT_FK) violated - parent key not found DELETE OPERATÖRÜ Delete operatörü ise tablodan kayıt silmek için kullanılmaktadır. SYNTAX: DELETE [FROM] table [WHERE condition]; SQL > DELETE FROM departments WHERE department_name = Finance ; 1 row deleted. SQL > DELETE FROM copy_emp; 22 rows deleted. SQL > DELETE FROM departments WHERE department_id IN (30, 40); 2 rows deleted. SQL > DELETE WHERE department_id = (SELECT department_id FROM departments WHERE department_name LIKE %Public% ); 1 row deleted. Update cümleciğinde olduğu gibi delete cümleciğinde de constraintler sorunlu olabilir. SQL > DELETE FROM departments WHERE department_id = 60; DELETE FROM departments * ERROR at line 1: ORA-02292: integrity constraint (HR.EMP_DEPT_FK) violated - child record found Emrah UYSAL 8

9 INSERT CÜMLECĞİNDE SUBQUERY KULLANIMI SQL > INSERT INTO (SELECT employee_id, last_name, , hire_date, job_id, salary, department_id WHERE department_id = 50) VALUES (99999, Taylor, DTAYLOR, TO_DATE( 07-JUN-99, DD-MON-RR ), ST_CLERK, 5000, 50); 1 row created. SQL > Select employee_id, last_name, , hire_date, job_id, salary, department_id WHERE department_id = 50; CHECK OPTION SQL > INSERT INTO (SELECT employee_id, last_name, , hire_date, job_id, salary WHERE department_id = 50 WITH CHECK OPTION) VALUES (99998, Smith, JSMITH, TO_DATE( 07-JUN-99, DD-MON-RR ), ST_CLERK, 5000); INSERT INTO * ERROR at line 1: ORA-01402: view WITH CHECK OPTION where-clause violation Yukarıdaki sorguda dikkat ederseniz department_id = 50 ve with check option kullanıldığı için subqery dönen sonuçlar vardır fakat select listesinde department_id yoktur bu durumda department_id değeri Null oalrak dönebilir.bu durumu engellemek için kullanılır.hemde department_id değeri olsa bile değeri muhakka 50 olmalıdır. Emrah UYSAL 9

10 DEFAULT OPERATÖRÜ Tabloyu yaratırken bazı alanlar için default bir değer verilir.tabloya her kayıt girildiğinde bu değer kullanılsın istenebilir. Böyle bir durumu kullanmak istiyorsak; SQL > INSERT INTO departments (department_id, department_name, manager_id) VALUES (300, Engineering, DEFAULT); SQL > UPDATE departments SET manager_id = DEFAULT WHERE department_id = 10; MERGE OPERATÖRÜ Merge operatörüde kullanışlı operatörlerden biridir.bir tablo update inde eklenecek kayıt tabloda varsa update eder,yoksa insert eder.yani update ve insert işlemini bir arada yapar. SYNTAX: MERGE INTO table_name table_alias USING (table view sub_query) alias ON (join condition) WHEN MATCHED THEN UPDATE SET col1 = col_val1, col2 = col2_val WHEN NOT MATCHED THEN INSERT (column_list) VALUES (column_values); SQL > MERGE INTO copy_emp c USING employees e ON (c.employee_id = e.employee_id) WHEN MATCHED THEN UPDATE SET c.first_name = e.first_name, c.last_name = e.last_name, c. = e. , c.phone_number = e.phone_number, c.hire_date = e.hire_date, c.job_id = e.job_id, c.salary = e.salary, c.commission_pct = e.commission_pct, c.manager_id = e.manager_id, c.department_id = e.department_id WHEN NOT MATCHED THEN INSERT VALUES(e.employee_id, e.first_name, e.last_name, e. , e.phone_number, e.hire_date, e.job_id, e.salary, e.commission_pct, e.manager_id, e.department_id); Emrah UYSAL 10

11 SQL > SELECT * FROM COPY_EMP; no rows selected SQL > MERGE INTO copy_emp c USING employees e ON (c.employee_id = e.employee_id) WHEN MATCHED THEN UPDATE SET... WHEN NOT MATCHED THEN INSERT VALUES...; SQL > SELECT * FROM COPY_EMP; 20 rows selected. DATABASE TRANSACTIONS Database transactionsları commi yada rollback olarak adlandırılır.yaptığımız işlemlerin kalıcı yada yanlışlıkla yapılan ilemlerin geri alınması için kullanılır.aynı şekilde save point mantığı kullanılarakta yapılan işlemlerin belli sırada saklanması öngörülebilir. UPDATE... SAVEPOINT update_done; Savepoint created. INSERT... ROLLBACK TO update_done; Rollback complete. Emrah UYSAL 11

12 ROLLBACK VE COMMİT ÖNCESİ Kullanıcı yaptığı değişiklikleri görebilir fakat diğer kullanıcılar yapılan değişiklikleri göremeyecektir. Yapılan değişiklikler tabloda Lock oluşturacaktır.başka kullancılar bu tablo üzerinde değişiklik yapmak istediklerinde Lock Error alacaklardır COMMİT SONRASI Kullanıcının yaptığı değişiklikleri tüm kullancıılar görebileceklerdir. Tablo üzerinde bulunan lock kalkacaktır. Bütün savepointler silinecektir. SQL > DELETE WHERE employee_id = 99999; 1 row deleted. SQL > INSERT INTO departments VALUES (290, Corporate Tax, NULL, 1700); 1 row inserted. SQL > COMMIT; Commit complete. SQL > DELETE FROM departments WHERE department_id IN (290, 300); 2 rows deleted. SQL > UPDATE copy_emp SET department_id = 80 WHERE employee_id = 206; 1 row updated. SQL > COMMIT; Commit Complete. ROLLBACK SONRASI Kullanıcının yaptığı değişiklikleri tüm kullancıılar görebileceklerdir.yani aslında data değişiklikleri geri alınacaktır. Tablo üzerinde bulunan lock kalkacaktır. SQL > DELETE FROM copy_emp; 22 rows deleted. SQL > ROLLBACK; Rollback complete. SQL > DELETE FROM test; Emrah UYSAL 12

13 25,000 rows deleted. SQL > ROLLBACK; Rollback complete. SQL > DELETE FROM test WHERE id = 100; 1 row deleted. SQL > SELECT * FROM test WHERE id = 100; No rows selected. SQL > COMMIT; Commit complete. CREATE TABLE KOMUTU Syntax: CREATE TABLE [schema.]table (column datatype [DEFAULT expr][,...]); SQL > CREATE TABLE dept (deptno NUMBER(2), dname VARCHAR2(14), loc VARCHAR2(13)); Table created. SQL > DESCRIBE dept; SQL > CREATE TABLE hr.admin_emp ( empno NUMBER(5) PRIMARY KEY, ename VARCHAR2(15) NOT NULL, ssn NUMBER(9) ENCRYPT, job VARCHAR2(10), mgr NUMBER(5), hiredate DATE DEFAULT (sysdate), photo BLOB, sal NUMBER(7,2), hrly_rate NUMBER(7,2) GENERATED ALWAYS AS (sal/2080),//11 G Virtual column comm NUMBER(7,2), deptno NUMBER(3) NOT NULL CONSTRAINT admin_dept_fkey REFERENCES hr.departments (department_id)); Oracle da table yapıları 2 şekilde olmaktadır, Emrah UYSAL 13

14 İlk olarak kullanıcya ait olan User Tables,bu tablo yapısı kullanıcıya ait olan verileri depolar,ikinci olarak ise Data Dictionary ler mevcuttur bunlar ise oracle ilk kurulduğunda oluşan sistem ve kullanıcılar hakkıda işlevsel anlamda bize bilgi veren tablolardır. Data dictionary viewları aşağıdaki gibidir. SQL > SELECT table_name FROM user_tables ; SQL > SELECT DISTINCT object_type FROM user_objects ; SQL > SELECT * FROM user_catalog ; VERİ TİPLERİ Emrah UYSAL 14

15 Long alanlar tablo eğer subquery ile yaratıldıysa kopyalamazlar, Long kolonlar group by ve order by yapısında kullanımazlar, Her tabloda ancak 1 tane long alan kullanılabilir, Long kolonlar için constraint tanımlanmaz, SUBQUERY İLE TABLO YARATMAK Syntax: CREATE TABLE table [(column, column...)] AS subquery; SQL > CREATE TABLE dept80 AS SELECT employee_id, last_name, salary*12 ANNSAL, hire_date WHERE department_id = 80; Table created. SQL > DESCRIBE dept80; ALTER TABLE STATEMENT Tabloya yeni bir kolon eklemek için, Mevcut bir kolonu modifiye etmek için, Yeni bir kolon için default value atamak için, Kolon silmek için, Kullanılabilmektedir. ALTER TABLE table ADD (column datatype [DEFAULT expr] [, column datatype]...); Emrah UYSAL 15

16 ALTER TABLE table MODIFY (column datatype [DEFAULT expr] [, column datatype]...); ALTER TABLE table DROP (column); SQL > ALTER TABLE dept80 ADD (job_id VARCHAR2(9)); Table altered. SQL > ALTER TABLE dept80 MODIFY (last_name VARCHAR2(30)); Table altered. SQL > ALTER TABLE dept80 DROP COLUMN job_id; Table altered. ALTER TABLE table SET UNUSED (column); Yada ALTER TABLE table SET UNUSED COLUMN column; ALTER TABLE table DROP UNUSED COLUMNS; SQL > ALTER TABLE dept80 SET UNUSED (last_name); Table altered. SQL > ALTER TABLE dept80 DROP UNUSED COLUMNS; Table altered. TABLO DROP Tablo içindeki tüm datalar ve tablonun structer ı drop edilir, Bekleyen tüm transactionlar commit edilir, İlgili indexler drop olur, Drop table statementtan rollback yapılamaz, SQL > DROP TABLE dept80; SQL > DROP TABLE dept80 CASCADE CONSTRAINTS; SQL > DROP TABLE admin_emp_dept PURGE; //Tablo çöp kutusuna atılmaz Emrah UYSAL 16

17 Table dropped. RENAME TABLE ilgili objelerin isimlerini değiştirmek için kullanılır, bunu yapabilmek için tablonun sahibi olmak gerekir, SQL > RENAME dept TO detail_dept; SQL > ALTER TABLE test1 RENAME TO test; Table renamed. SQL > ALTER TABLE test RENAME COLUMN col2 TO description; TABLE TRUNCATE Tablodaki tüm kayıtlar hızlı bir şekilde silinir, Tabloda kullanılan alan serbest bırakılır, Rollback yapılamaz, SQL > TRUNCATE TABLE detail_dept; SQL > TRUNCATE CLUSTER detail_dept REUSE STORAGE; Table truncated. TABLE COMMENT Tablolar için ileriki zamanlarda bu tablo ne işe yarıyordu düşüncesiyle yapılan işlemdir, Syntax: COMMENT ON TABLE table COLUMN table.column IS 'text'; SQL > COMMENT ON TABLE employees IS Employee Information ; Comment created. ÖRNEK UYGULAMALAR SORU? Maaşı en fazla olan personelin emsanno, ad, soyad ve maas alanlarını listeleyiniz. SQL > SELECT EMSANNO, AD, SOYAD, MAAS FROM PERSONEL WHERE MAAS = (SELECT MAX (MAAS) FROM PERSONEL); SORU? Her departmanda en az maaş alan personelin emsanno, ad, soyad ve maaş alanlarını listeleyiniz. SQL > SELECT DEPARTMAN, EMSANNO, AD, SOYAD, MAAS FROM PERSONEL WHERE MAAS IN (SELECT MIN(MAAS) FROM PERSONEL GROUP BY DEPARTMAN); Emrah UYSAL 17

18 SORU? 400 numaralı departmanda çalışan personelin ortalama maaşından daha fazla ortalama maaşı olan departmanları listeleyiniz. SQL > SELECT DEPARTMAN, AVG (MAAS) FROM PERSONEL GROUP BY DEPARTMAN HAVING AVG(MAAS) > (SELECT AVG (MAAS) FROM PERSONEL WHERE DEPARTMAN = 400); SORU? 100 numaralı departmanda çalışan herhangi bir personelden daha fazla maaş alan personelin emsanno, ad, soyad ve maas alanlarını listeleyiniz. SQL > SELECT EMSANNO, AD, SOYAD, MAAS FROM PERSONEL WHERE MAAS > SOME (SELECT DISTINCT MAAS FROM PERSONEL WHERE DEPARTMAN = 100); SORU? 100 numaralı departmanda çalışan her bir personelden daha fazla maaş alan personelin emsanno, ad, soyad ve maas alanlarını listeleyiniz. SQL > SELECT EMSANNO, AD, SOYAD, MAAS FROM PERSONEL WHERE MAAS > ALL (SELECT DISTINCT MAAS FROM PERSONEL WHERE DEPARTMAN = 100); Yada SQL > SELECT EMSANNO, AD, SOYAD, MAAS FROM PERSONEL WHERE MAAS > (SELECT MAX(MAAS) FROM PERSONEL WHERE DEPARTMAN = 100); Emrah UYSAL 18

BÖLÜM- 11: BÜYÜK VERİ KÜMELERİ

BÖLÜM- 11: BÜYÜK VERİ KÜMELERİ BÖLÜM- 11: BÜYÜK VERİ KÜMELERİ Alt sorgular kullanarak verileri değiştirmek İnsert ve update işleminde DEFAULT ifadesini kullanmak. Çoklu insert etme Tablo satırlarını birleştirme : Merge DEFAULT DEĞERİNİ

Detaylı

Emrah UYSAL 1

Emrah UYSAL  1 ORACLE DERS 5 SET(KÜME) OPERATÖRLERİ Set operatörleri,intersect VE MINUS olarak kullanılmaktadır. Grafik olarak inceleyecek olursak, = Tüm kolonları distinct olarak seçip getirir ALL = Tüm kolonları distinct

Detaylı

1. IT bölümünde çalışan tüm çalışanların isimlerini gösteren bir sorgu yazınız.

1. IT bölümünde çalışan tüm çalışanların isimlerini gösteren bir sorgu yazınız. Çalışma Soruları 6 Employees (employee_id, first_name, last_name, email, phone_number, hire_date, job_id, salary, commission_pct, manager_id, department_id) (CALISANLAR) job_id : Jobs (job_id) manager_id:

Detaylı

Emrah UYSAL www.emrahuysal.com 1

Emrah UYSAL www.emrahuysal.com 1 ORACLE DERS 2 BİRDEN FAZLA TABLO ÜZERİNDE ÇALIŞMAK(JOIN İŞLEMLERİ) Şekilde görüldüğü gibi Employees tablosundan employee_id ve department_id alanı Departments tablosundan ise department_name alanı kullanılıp

Detaylı

BÖLÜM -7: TABLOLARI OLUŞTURMA VE YÖNETME

BÖLÜM -7: TABLOLARI OLUŞTURMA VE YÖNETME BÖLÜM -7: TABLOLARI OLUŞTURMA VE YÖNETME Ana veritabanı nesnelerini sınıflandırmak Tablo yapısını inceleme Tablo sütunlarının veri tiplerini listeleme Basit bir tablo oluşturma Constraint oluşturma Şema

Detaylı

BÖLÜM -2: VERİLERİ SINIRLAMA VE SIRALAMA

BÖLÜM -2: VERİLERİ SINIRLAMA VE SIRALAMA BÖLÜM -2: VERİLERİ SINIRLAMA VE SIRALAMA WHERE ifadesi ile verileri sınırlamak Karşılaştırma operatörleri BETWEEN operatörü IN operatörü LIKE operatörü IS NULL operatörü Lojik operatörler AND operatörü

Detaylı

BÖLÜM- 13: ALT SORGULAR İLE VERİ İŞLEME

BÖLÜM- 13: ALT SORGULAR İLE VERİ İŞLEME BÖLÜM- 13: ALT SORGULAR İLE VERİ İŞLEME Birden fazla sütuna sahip alt sorgular yazmak Scalar alt sorgular yazmak Birbiri ile ilişkili alt sorgulardaki problemleri çözmek İlişkili alt sorgular kullanarak

Detaylı

BÖLÜM- 5: BİRDEN FAZLA TABLODAN VERİ GETİRMEK

BÖLÜM- 5: BİRDEN FAZLA TABLODAN VERİ GETİRMEK BÖLÜM- 5: BİRDEN FAZLA TABLODAN VERİ GETİRMEK Sorgularda birden fazla tablo kullanımı Tabloların birleştirilmesi Birleştirme türleri Eşiti olan birleştirme (Join) Eşiti olmayan birleştirme Left Outer Join

Detaylı

BÖLÜM -6: VERİLERİ DEĞİŞTİRMEK

BÖLÜM -6: VERİLERİ DEĞİŞTİRMEK BÖLÜM -6: VERİLERİ DEĞİŞTİRMEK Her bir veri değiştirme komutunu kullanabilmek. (Data Manipulation Language, DML) Bir tabloya kayıt eklemek (INSERT) Bir tablodaki kayıtları güncellemek (UPDATE) Bir tablodan

Detaylı

Veritabanı Tasarımı. Çoklu Satır Alt Sorgular

Veritabanı Tasarımı. Çoklu Satır Alt Sorgular Veritabanı Tasarımı Çoklu Satır Alt Sorgular Konular Çoklu satır alt sorgulardaki IN, ANY ve ALL karşılaştırma operatörlerinin doğru kullanımı WHERE ve HAVING yantümcelerinde çoklu satır alt sorguları

Detaylı

--Tüm personel kayıtlarını seçiniz. SELECT* FROM employees ;

--Tüm personel kayıtlarını seçiniz. SELECT* FROM employees ; Fatih Sultan Mehmet Vakıf Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü Veritabanı Yönetim Sistemleri Dersi 2015-2016 Bahar Yarıyılı Laboratuvar SQL çalışmaları Yrd. Doç. Dr. Ali NİZAM

Detaylı

ORACLE DERS 1 SQL E GİRİŞ

ORACLE DERS 1 SQL E GİRİŞ ORACLE DERS 1 SQL E GİRİŞ Emrah UYSAL www.emrahuysal.com 1 SELECT CÜMLECİĞİ Kullanım : SELECT * {[DISTINCT] column expression [alias],...} FROM table; Yukarıdaki cümlecikte dikkat etmemiz gereken hangi

Detaylı

BÖLÜM- 8: DİĞER ŞEMA NESNELERİNİ OLUŞTURMA

BÖLÜM- 8: DİĞER ŞEMA NESNELERİNİ OLUŞTURMA BÖLÜM- 8: DİĞER ŞEMA NESNELERİNİ OLUŞTURMA View oluşturma View lardan veri getirme Sequence oluşturma ve kullanma İndex oluşturma ve kullanma Synonym oluşturma ve kullanma VIEW Bir veya birden fazla tablodan

Detaylı

Veritabanı Yönetim Sistemleri (Veritabanı Tasarımı) SQL (Structured Query Language)

Veritabanı Yönetim Sistemleri (Veritabanı Tasarımı) SQL (Structured Query Language) Veritabanı Yönetim Sistemleri (Veritabanı Tasarımı) SQL (Structured Query Language) Konular Yapısal SQL Komutları Gruplama İşlemi SQL Fonksiyonları Kaynaklar 2 SQL (Structured Query Language) SQL Carlos

Detaylı

Veriyi ve Bilgiyi Organize Etmek. Bilgisayar Mühendisliğine Giriş 1

Veriyi ve Bilgiyi Organize Etmek. Bilgisayar Mühendisliğine Giriş 1 Veriyi ve Bilgiyi Organize Etmek Bilgisayar Mühendisliğine Giriş 1 Veri ve Dosya Yapıları Bilgisayar Mühendisliğine Giriş 2 Veri ve Dosya Yapıları Bilgi, içerisinde bulunduğumuz çağda hızlı ve sürekli

Detaylı

Yukarıdakilerden hangileri DML (Data Manipulation Language) ile gerçekleştirilir?

Yukarıdakilerden hangileri DML (Data Manipulation Language) ile gerçekleştirilir? 1) I. Tablo Oluşturma II. Veri Güncelleme III. Veri Silme IV. Veri Ekleme V. Tablo Silme Yukarıdakilerden hangileri DML (Data Manipulation Language) ile gerçekleştirilir? a) I, IV ve V b) II, III ve IV

Detaylı

Veri Tabanı SQL Server ve Management Studio kurulum linkleri: https://www.microsoft.com/en-us/download/details.aspx?id=42299

Veri Tabanı SQL Server ve Management Studio kurulum linkleri: https://www.microsoft.com/en-us/download/details.aspx?id=42299 Veri Tabanı 1 1. SQL Server ve Management Studio kurulum linkleri: https://www.microsoft.com/en-us/download/details.aspx?id=42299 2. SQL Management Studio açılış ekranı: Server Type: reporting, analysis

Detaylı

Creating Tables in Oracle

Creating Tables in Oracle SQL: CREATE Create a Database To create a database: CREATE DATABASE database_name Creating Tables in Oracle Prerequisites For a user to be able to create a table, he needs the create table system privilege,

Detaylı

Veri Tabanı Hafta Dersi

Veri Tabanı Hafta Dersi Veri Tabanı - 1 7. Hafta Dersi Dersin Hedefleri SQL Yapısal Sorgulama Dili Veri Tanımlama Dili (DDL) Create Alert Drop Veri tanımlama dili verinin ne olduğundan çok verinin tipi ile ilgilenir. Veri tabanı

Detaylı

SQL'e Giriş. SELECT Deyimi. SQL Komutları. Yardımcı Deyimler

SQL'e Giriş. SELECT Deyimi. SQL Komutları. Yardımcı Deyimler SQL'e Giriş SQL komutları kullanılarak aşağıdaki işlemler yapılabilir: Veritabanı nesnelerinin oluşturulması ve bu nesnelerle ilgili işlemlerin yapılması Bilgilerin istenilen koşullara göre görüntülenmesi

Detaylı

Mysql Veritabanı Komutları

Mysql Veritabanı Komutları Mysql Veritabanı Komutları Mysql Veri Tabanı Komutları Hazırlayan : M. Başar ACAROĞLU Kaynaklar: http://www.hrzafer.com/sql-dersleri http://www.w3schools.com/sql/default.asp Veri Tabanı Nedir? Mysql Veritabanı

Detaylı

Unutulmuş Özellikler: Oracle Veritabanına Yaptığınız Yatırımı Sonuna Kadar Kullanın

Unutulmuş Özellikler: Oracle Veritabanına Yaptığınız Yatırımı Sonuna Kadar Kullanın Unutulmuş Özellikler: Oracle Veritabanına Yaptığınız Yatırımı Sonuna Kadar Kullanın TROUG Oracle Day 2011 etkinliği Swiss Hotel 01/11/2010 H.Tonguç Yılmaz - tonguc.yilmaz@gmail.com http://friendfeed.com/tongucy

Detaylı

Oracle Database 11g: Introduction to SQL

Oracle Database 11g: Introduction to SQL Oracle Database 11g: Introduction to SQL Mehmet Salih DEVECI GTECH-Kıdemli Veritabanı Yöneticisi Mehmetsalih.deveci@gtech.com.tr BÖLÜM- 1: SQL E GİRİŞ SELECT ifadesinin kabiliyetlerinin ortaya çıkarılması

Detaylı

Laboratuvar 6 TABLOLAR VE KISITLAR

Laboratuvar 6 TABLOLAR VE KISITLAR Laboratuvar 6 TABLOLAR VE KISITLAR Tablolar veritabanında yer alan en basit veri saklama yapılarıdır. Bir tablo temelde kendisini oluşturan sütun ve bu sütunların özelliklerinden oluşmuş iki boyutlu bir

Detaylı

ACCESS PLATFORMUNDA SQL

ACCESS PLATFORMUNDA SQL ACCESS PLATFORMUNDA SQL (STRUCTURED QUERY LANGUAGE) KODLAMA ÖRNEKLERİ DISTINCT : Bir alanda birbirinin aynı kayıtlar bulunabilir. Öğrenciler tablosundaki aynı isimde öğrencilerin bulunması durumunda aynı

Detaylı

YAPISAL SORGULAMA DİLİ (SQL)

YAPISAL SORGULAMA DİLİ (SQL) YAPISAL SORGULAMA DİLİ (SQL) OGRENCI Tablosu 1234 Zeynep Makina K 23.06.1984 1. Cad 3.4 CREATE TABLE VERİ TANIMLAMA DİLİ (VTD) Veritabanında yeni bir tablonun oluşturulmasını sağlar. Yukarıda tanımlanan

Detaylı

SQL'e Giriş 2. CREATE TABLE tabloadı (kolon isimleri ve veri türleri) (BOLUM_NO NUMBER, BOLUM_ADI CHAR(10));

SQL'e Giriş 2. CREATE TABLE tabloadı (kolon isimleri ve veri türleri) (BOLUM_NO NUMBER, BOLUM_ADI CHAR(10)); SQL'e Giriş 2 VERİ TANIMLAMA (DDL) İŞLEMLERİ Genel Yazılımı, 1. TABLOLARIN OLUŞTURULMASI (CREATE TABLE): CREATE TABLE tabloadı (kolon isimleri ve veri türleri) Örnek 1: CREATE TABLE BOLUM (BOLUM_NO NUMBER,

Detaylı

VERĐTABANI YÖNETĐM SĐSTEMLERĐ

VERĐTABANI YÖNETĐM SĐSTEMLERĐ VERĐTABANI YÖNETĐM SĐSTEMLERĐ Öğr.Gör.Sedat Telçeken ANADOLU ÜNĐVERSĐTESĐ FEN FAKÜLTESĐ MATEMATĐK BÖLÜMÜ 2005 2006 Bahar Dönemi D M L Bilindiği üzere SQL tablolar üzerinde sorgulama yapar. Bu sorgular

Detaylı

Emrah UYSAL 1

Emrah UYSAL  1 ORACLE DERS 4 CONSTRAINTS(KISITLAR) Constraintler table yada kolon bazlı güvenilik yani veri güvenliği sağlamada kullanılır,not NULL,CHECK,UNIQUE,PROMARY KEY VE FOREIGN KEY olmak üzere çeşitleri vardır.

Detaylı

SQL veri tabalarına erişmek ve onları kullanmak için geliştirilmiş bir lisandır.

SQL veri tabalarına erişmek ve onları kullanmak için geliştirilmiş bir lisandır. SQL veri tabalarına erişmek ve onları kullanmak için geliştirilmiş bir lisandır. Bu dersimizde biz Microsoft SQL Server veritabanı sistemini kullanmayı öğreneceğiz. SQL Nedir? SQL Structured Query Language

Detaylı

20461C Querying Microsoft SQL Server Modül Seviye Belirleme Testi

20461C Querying Microsoft SQL Server Modül Seviye Belirleme Testi 20461C Querying Microsoft SQL Server Modül Seviye Belirleme Testi 1) Aşağıdaki SQL Server sürümlerinden hangisi ana sürümlerden bir tanesidir? a) Parallel Data Warehouse b) Express c) Standart d) Developer

Detaylı

Veritabanı Yönetim Sistemleri (Başarım Eniyileme Performance Tuning)

Veritabanı Yönetim Sistemleri (Başarım Eniyileme Performance Tuning) Veritabanı Yönetim Sistemleri (Başarım Eniyileme Performance Tuning) Konular SQL Başarım Eniyileme (Performance Tuning) 2 SQL Başarım Eniyileme (Performance Tuning) 3 SELECT ifadesinde * (bütün sütunlar)

Detaylı

Veritabanı Tasarımı. Sütun Değerlerini Güncelleme ve Satırları Silme

Veritabanı Tasarımı. Sütun Değerlerini Güncelleme ve Satırları Silme Veritabanı Tasarımı Sütun Değerlerini Güncelleme ve Satırları Silme Konular UPDATE komutunu oluşturmak ve çalıştırmak DELETE komutunu oluşturmak ve çalıştırmak Tabloda güncelleme yapmak ya da veri silmek

Detaylı

EBE-368 Veri Tabanı Yönetim Sistemleri SQL

EBE-368 Veri Tabanı Yönetim Sistemleri SQL EBE-368 Veri Tabanı Yönetim Sistemleri SQL Dr. Dilek Küçük SQL Sorgu Dili [1] Ogrenci no ad soyad yas ortalama 21325 Necla Yılmaz 18 2,9 21345 Öykü Okan 20 2,1 21378 Elçin Demir 19 3,3 21389 Özgür Kara

Detaylı

VERİTABANI Veritabanı Yönetimi

VERİTABANI Veritabanı Yönetimi VERİTABANI Veritabanı Yönetimi YAPILANDIRILMIŞ SORGULAMA DİLİ (SQL) Veritabanı yönetimi, veritabanının yapısal özelliklerini belirtmek ve değiştirmek, veritabanına kullanıcı erişimlerini ve yetkilerini

Detaylı

EBE-368 Veri Tabanı Yönetim Sistemleri İlişkisel Model (The Relational Model)

EBE-368 Veri Tabanı Yönetim Sistemleri İlişkisel Model (The Relational Model) EBE-368 Veri Tabanı Yönetim Sistemleri İlişkisel Model (The Relational Model) Dr. Dilek Küçük İlişkisel Model [1] Günümüzde en yaygın kullanılan veri tabanı modelidir. Bir ilişkisel veri tabanı bir veya

Detaylı

Data Programming SQL Language. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı

Data Programming SQL Language. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı Data Programming SQL Language Elbistan Meslek Yüksek Okulu 2015 2016 Bahar Yarıyılı Öğr.Gör. Murat KEÇECĠOĞLU 15 Mar 2016 1 SQL deyimleri veritabanları üzerinde çeşitli işlemleri yerine getirirler. Veritabanından

Detaylı

5 SQL- Yapısal Sorgulama Dili. Veritabanı 1

5 SQL- Yapısal Sorgulama Dili. Veritabanı 1 5 SQL- Yapısal Sorgulama Dili Veritabanı 1 SQL- Yapısal Sorgulama Dili SQL ifadeleri yapısal olarak üç gruba ayrılır. Veri Tanımlama Dili (DDL - Data Definition Language) Veri İşleme Dili (DML - Data Manipulation

Detaylı

Bu işleçlerin dışında, aşağıda belirtilen karşılaştırma işleçlerinden de yararlanılır.

Bu işleçlerin dışında, aşağıda belirtilen karşılaştırma işleçlerinden de yararlanılır. 18 SQL SORGU DİLİ SQL (Structured Query Language) yapısal sorgu dili, veritabanı yönetim sistemlerinin standart programlama dili olarak bilinmektedir. SQL dilinin Access içinde sorgu pencerelerinde veya

Detaylı

SQL Deyimleri. Öğr.Gör.Volkan ALTINTAŞ Volkanaltintas.com

SQL Deyimleri. Öğr.Gör.Volkan ALTINTAŞ Volkanaltintas.com SQL Deyimleri Öğr.Gör.Volkan ALTINTAŞ Volkanaltintas.com SQL NEDİR? SQL bir veri tabanıyla iletişim kurmak için kullanılır. ANSI standardına göre ilişkisel veri tabanı yönetim sistemlerinin standart dilidir.

Detaylı

Veritabanı Tasarımı. Tablo Değiştirme

Veritabanı Tasarımı. Tablo Değiştirme Veritabanı Tasarımı Tablo Değiştirme Konular Tabloyu değiştirme neden önemlidir açıklama ALTER, DROP, RENAME ve TRUNCATE DDL komutlarının etkisini tablolar ve sütunlar üzerinde görme ALTER TABLE komutlarıadd,

Detaylı

MOBİL UYGULAMA GELİŞTİRME

MOBİL UYGULAMA GELİŞTİRME MOBİL UYGULAMA GELİŞTİRME PELİN YILDIRIM FATMA BOZYİĞİT YZM 3214 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Bu Derste Veri Saklama 2 Veri Saklama Veri Saklama her appnin ihtiyaci

Detaylı

Veri Tabanı Programlamaya Giriş

Veri Tabanı Programlamaya Giriş Veri Tabanı Programlamaya Giriş Kitap özeti Veri Tabanı Programlamaya Giriş SQL insanların veritabanı sistemleri ile konuşmasını sağlayan popüler bir dildir. Bu dil sayesinde, bir veritabanından kayıtları

Detaylı

2- Total de 8000 byte yer tutup 4000 karakter olarak kullanabildiğimiz tip aşağıdakilerden hangisidir?

2- Total de 8000 byte yer tutup 4000 karakter olarak kullanabildiğimiz tip aşağıdakilerden hangisidir? 1- ' select cast ('500' as nvarchar) + cast ('250' as nvarchar) sorgusunun sonucu olarak aşağıdakilerden hangisi döner? a) 750 b) 250 c) 500250 d) 500 e)250500 2- Total de 8000 byte yer tutup 4000 karakter

Detaylı

Veritabanlarına ve SQL'e Giriş. Devrim GÜNDÜZ. Teknoloji Destek Merkezi -- www.tdmsoft.com. devrim@gunduz.org

Veritabanlarına ve SQL'e Giriş. Devrim GÜNDÜZ. Teknoloji Destek Merkezi -- www.tdmsoft.com. devrim@gunduz.org Veritabanlarına ve SQL'e Giriş Devrim GÜNDÜZ Teknoloji Destek Merkezi -- www.tdmsoft.com devrim@gunduz.org http://seminer.linux.org.tr http://www.gunduz.org Giriş Bu seminerde, aşağıdaki konular anlatılacaktır:

Detaylı

SQL Kod ile Tablo Oluşturma

SQL Kod ile Tablo Oluşturma SQL Kod ile Tablo Oluşturma Aşağıdaki SQL kodları Veri tabanı hazırlama programında yazılıp çalıştırıldığı zaman PERSONEL adında bir tablo oluşturulur ve bu tablonun sütunları Personel_no, Adı, Soyadı

Detaylı

PostgreSQL ve PL/pgSQL

PostgreSQL ve PL/pgSQL PostgreSQL ve PL/pgSQL Adnan DURSUN Uygulama tasarımcı ve geliştirici adnandursun@asrinbilisim.com.tr 30.04.2011 İstanbul 1. PostgreSQL Türkiye Konferansı 1 Akış PL/pgSQL nedir PL/pgSQL neden kullanmalıyız

Detaylı

SQL Komutları (2) Uzm. Murat YAZICI

SQL Komutları (2) Uzm. Murat YAZICI SQL Komutları (2) Uzm. Murat YAZICI Sıralama Sıralama işlemi için SELECT ifadesinde ORDER BY kullanılır. Bu ifadede ASC kelimesi kullanılırsa sıralama küçükten büyüğe doğru (A-Z), DESC kullanılırsa büyükten

Detaylı

Veritabanı Tasarımı. Alt Sorgu Temelleri

Veritabanı Tasarımı. Alt Sorgu Temelleri Veritabanı Tasarımı Alt Sorgu Temelleri Konular Verilerin elde edilmesi için alt sorguların tanımlanması ve açıklanması WHERE yantümcesinde tek satır alt sorgu oluşturulması ve çalıştırılması Tek satır

Detaylı

Emrah UYSAL 1 TABLESPACE ENCRYPTION ORACLE 11G

Emrah UYSAL  1 TABLESPACE ENCRYPTION ORACLE 11G TABLESPACE ENCRYPTION ORACLE 11G Oracle 11G nin yeni gelen özelliklerinden biride tablespace seviyesinde encryption yapılabilmesidir.tabiiki yine bunu yapabilmek için wallet ın aktif ve açık olması gerekmektedir.wallet

Detaylı

Genel Kavramlar. Bilgisayar ortamında işlenebilecek durumda bulunan kayıtlar. Birbiri ile ilişkili veriler topluluğu ve veriler arası ilişkiler

Genel Kavramlar. Bilgisayar ortamında işlenebilecek durumda bulunan kayıtlar. Birbiri ile ilişkili veriler topluluğu ve veriler arası ilişkiler Genel Kavramlar Veri Nedir? Bilgisayar ortamında işlenebilecek durumda bulunan kayıtlar Veri Tabanı Nedir? Birbiri ile ilişkili veriler topluluğu ve veriler arası ilişkiler Veritabanı Yönetim Sistemi (DBMS)Nedir?

Detaylı

VERİ TABANI YÖNETİM SİSTEMLERİ I

VERİ TABANI YÖNETİM SİSTEMLERİ I BÖLÜM 7 7. TEMEL SQL KOMUTLARI-I SQL (Structured Query Language) kendisi bir programlama dili olmamasına rağmen bir çok kişi tarafından programlama dili olarak bilinir. SQL herhangi bir veri tabanı ortamında

Detaylı

PostgreSQL ve PL/pgSQL

PostgreSQL ve PL/pgSQL PostgreSQL ve PL/pgSQL Adnan DURSUN Uygulama tasarım ve geliştiricisi @ : adnandursun.at.asrinbilisim.com.tr : +AdnanDURSUN Sunum Akışı PL/pgSQL nedir PL/pgSQL neden kullanmalıyız PL/pgSQL in yapısı Saklı

Detaylı

Veri Tabanı II Alt Sorgular

Veri Tabanı II Alt Sorgular Veri Tabanı II Alt Sorgular Alt Sorgular Alt sorgular bir SQL sorgusunun içerisinde başka bir SQL sorgusu kullanılarak oluşturulan SQL ifadeleridir. Çoğunlukla SQL sorgusunun WHERE ve HAVING kısımlarında

Detaylı

Veri tabanı içinde bulunan tablolardakibazı sütunlarda bulunan bilgilerin, herkes tarafından görülmesi istenmeyebilir.

Veri tabanı içinde bulunan tablolardakibazı sütunlarda bulunan bilgilerin, herkes tarafından görülmesi istenmeyebilir. View Oluşturma Sql komutlarından view oluşturma ve faydaları, myadminde gösterimi VİEW OLUŞTURMANIN YARARLARI 1. Veri güvenliği Veri tabanı içinde bulunan tablolardakibazı sütunlarda bulunan bilgilerin,

Detaylı

TRIGGER. Trigger lar, tablo üzerinde tanımlanabilen ve bu tablo üzerinde bir işlem gerçekleştiğinde tetiklenen programlama ögeleridir.

TRIGGER. Trigger lar, tablo üzerinde tanımlanabilen ve bu tablo üzerinde bir işlem gerçekleştiğinde tetiklenen programlama ögeleridir. TRIGGER Trigger lar, tablo üzerinde tanımlanabilen ve bu tablo üzerinde bir işlem gerçekleştiğinde tetiklenen programlama ögeleridir. DML ve DDL trigger lar olarak ikiye ayırmak mümkündür. DML (Data Manipulation

Detaylı

T.C GAZİ ÜNİVERSİTESİ BİLİŞİM ENSTİTÜSÜ YÖNETİM BİLİŞİM SİSTEMLERİ ANA BİLİM DALI MS SQL KOMUTLARI VE MS SQL KOMUTLARI İLE İLGİLİ UYGULAMALAR

T.C GAZİ ÜNİVERSİTESİ BİLİŞİM ENSTİTÜSÜ YÖNETİM BİLİŞİM SİSTEMLERİ ANA BİLİM DALI MS SQL KOMUTLARI VE MS SQL KOMUTLARI İLE İLGİLİ UYGULAMALAR T.C GAZİ ÜNİVERSİTESİ BİLİŞİM ENSTİTÜSÜ YÖNETİM BİLİŞİM SİSTEMLERİ ANA BİLİM DALI MS SQL KOMUTLARI VE MS SQL KOMUTLARI İLE İLGİLİ UYGULAMALAR YÜKSEK LİSANS PROJESİ Mehmet Emin AKKAYA Danışman: Yrd. Doç.

Detaylı

İNTERNET PROGRAMCILIĞI 2 11. HAFTA. MYSQL ile VERİTABANI İŞLEMLERİ - 1. Hazırlayan Fatih BALAMAN. İçindekiler. Hedefler. Veritabanı Oluşturma, Silme

İNTERNET PROGRAMCILIĞI 2 11. HAFTA. MYSQL ile VERİTABANI İŞLEMLERİ - 1. Hazırlayan Fatih BALAMAN. İçindekiler. Hedefler. Veritabanı Oluşturma, Silme İNTERNET PROGRAMCILIĞI 2 11. HAFTA İçindekiler Veritabanı Oluşturma, Silme MYSQL ile VERİTABANI İŞLEMLERİ - 1 Tablo Oluşturma, Silme Tabloya Bilgi Girme Veritabanı Sorgulamaları Hedefler Mysql komutları

Detaylı

BMB202. Veritabanı Yönetimi Ders 6. SQL. Erdinç Uzun NKÜ Çorlu Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü

BMB202. Veritabanı Yönetimi Ders 6. SQL. Erdinç Uzun NKÜ Çorlu Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü BMB202. Veritabanı Yönetimi Ders 6. SQL Erdinç Uzun NKÜ Çorlu Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü Dersin Planı SQL Fonksiyonları Çoklu Tablo İşlemleri İç içe Select ler JOIN Birleştirme

Detaylı

http://alikoker.name.tr DELPHİDE SQL KULLANIMI Database İlişkisi

http://alikoker.name.tr DELPHİDE SQL KULLANIMI Database İlişkisi DELPHİDE SQL KULLANIMI Database İlişkisi ID AD MAAS } Kolon adı (field) 1 Kazım 10000 } 2 Metin 75000 } Kayıt (rows).... } Kolon Kolon Kolon Table : Database'de saklanan kolonların birleşiminden oluşan

Detaylı

BÖLÜM- 3: TEK SATIR FONKSİYONLARI

BÖLÜM- 3: TEK SATIR FONKSİYONLARI BÖLÜM- 3: TEK SATIR FONKSİYONLARI SQL fonksiyonları nedir? Karakter Fonksiyonları Büyük küçük harf dönüştürme fonksiyonları Karakter işleme fonksiyonları Sayı fonksiyonları Tarih fonksiyonları Dönüştürme

Detaylı

SP_RENAMEDB eski_isim, yeni_isim VEYA SP_RENAMEDB 'eski isim', 'yeni isim'

SP_RENAMEDB eski_isim, yeni_isim VEYA SP_RENAMEDB 'eski isim', 'yeni isim' Bu Derste Öğrenecekleriniz: 1- Veri Tabanı Adı Değiştirme 2- Nesnelerin Adını Değiştirme a. Tablo Adı Değiştirme b. Alan Adı Değiştirme c. Constraint (Kısıtlama) Adı Değiştirme 3- Tablo Düzenleme Komutları

Detaylı

Veritabanı Tasarımı. Self-Join ve Hiyerarşik Sorgular

Veritabanı Tasarımı. Self-Join ve Hiyerarşik Sorgular Veritabanı Tasarımı Self-Join ve Hiyerarşik Sorgular Konular Self-join kullanarak tablonun kendini birleştirmesi için SELECT ifadesi oluşturma ve çalıştırma Hiyerarşik sorgu kavramını yorumlama Ağaç-yapısında

Detaylı

EROL AKGÜL

EROL AKGÜL ----------------------------------------------------------------------------------EROL AKGÜL 1-) A-) C1 C2 1 NULL 2 10 3 20 4 30 5 40 6 50 Yukarıda verilen "table1" isimli tabloda ; Select sum(c2) as A1,

Detaylı

8 Oracle da tablo yapısı içinde otomatik artan kolon yoktur. (identity kolon

8 Oracle da tablo yapısı içinde otomatik artan kolon yoktur. (identity kolon ORACLE GİRİŞ Oracle ile SQL Server ın karşılaştıralım. 1 Oracleda veritabanı yerine kullanıcı oluşturulur. Kullanıcılar veritabanı gibi davranır. 2 Tablo oluşturma, değiştirme ve silme kodları aynı. 3

Detaylı

SORGULAR VE ÇEŞİTLERİ II

SORGULAR VE ÇEŞİTLERİ II Ünite 8 SORGULAR VE ÇEŞİTLERİ II Öğr. Gör. Kemal ÖZCAN Bu ünitede, Sorgular ve Çeşitleri konusu ele alınacaktır. Yapılacaklar Burada yazılan SQL ifadeleri MS SQL SERVER, ORACLE ve MySQL veritabanı sistemlerinin

Detaylı

VERİTABANI. SQL (Structured Query Language)

VERİTABANI. SQL (Structured Query Language) VERİTABANI SQL (Structured Query Language) SQL'de Gruplama Bir tablonun satırları gruplara ayrılarak fonksiyonların bunlara uygulanması mümkündür. Gruplara ayırmak için SELECT deyimi içerisinde GROUP BY

Detaylı

Oracle da kullanılan veri tipleri:

Oracle da kullanılan veri tipleri: ORACLE A GİRİŞ Oracle ile SQL Server ı karşılaştıralım, 1 Oracle da veritabanı yerine kullanıcı oluşturulur. Kullanıcılar veritabanı gibi davranır. 2 Tablo oluşturma, yapısını değiştirme, silme kodları

Detaylı

- Tablo (Table):Veri saklama için temel yapıdır. Bir veya daha fazla sütundan ve sıfir veya daha fazla satırdan oluşur.

- Tablo (Table):Veri saklama için temel yapıdır. Bir veya daha fazla sütundan ve sıfir veya daha fazla satırdan oluşur. Veri tabanı (database) Nedir? : İçinde bulunan nesneleri vasıtasıyla çok büyük verileri saklayan ve bu verilerle işlem yapan bir platformdur. İlişkisel veri tabanı Yönetim Sistemi - RDMS (Relational Database

Detaylı

Veritabanına Uygulanması

Veritabanına Uygulanması Add, Alter Drop, Alter Change, Alter Sql komutları ve açıklamaları CREATE CREATE TABLE Üzerinde çalışma yapılan veritabanı içerisinde yeni bir tablonun oluşturulmasını sağlar. CREATE TABLE tablo_adı (alan_adı1

Detaylı

SP_RENAMEDB eski_isim, yeni_isim VEYA SP_RENAMEDB 'eski isim', 'yeni isim'

SP_RENAMEDB eski_isim, yeni_isim VEYA SP_RENAMEDB 'eski isim', 'yeni isim' Bu Derste Öğrenecekleriniz: 1- Veri Tabanı Adı Değiştirme 2- Nesnelerin Adını Değiştirme a. Tablo Adı Değiştirme b. Alan Adı Değiştirme c. Constraint (Kısıtlama) Adı Değiştirme 3- Tablo Düzenleme Komutları

Detaylı

VERİ TABANI YÖNETİM SİSTEMLERİ I

VERİ TABANI YÖNETİM SİSTEMLERİ I BÖLÜM 8 8. TEMEL SQL KOMUTLARI-II 8.1. SELECT (Seç) Komutu Veri tabanındaki tablo veya tablolardan istenilen özellikteki verileri seçip listeleme için kullanılan komuttur. Genel kullanımı aşağıdaki gibidir.

Detaylı

Liquibase ile Veri Tabanı Değişiklik Yönetimi

Liquibase ile Veri Tabanı Değişiklik Yönetimi Liquibase ile Veri Tabanı Değişiklik Yönetimi Ahmet Deniz Korkmaz deniz.korkmaz@ozguryazilim.com.tr LIQUIBASE Versiyon kontrolü olmadan kod yazmıyoruz. Peki veritabanı? Veritabanı değişiklik, versiyonlama

Detaylı

Veritabanı Tasarımı. Join Yantümceleri

Veritabanı Tasarımı. Join Yantümceleri Veritabanı Tasarımı Join Yantümceleri Konular ANSI-99 USIN ve ON yantümceleri kullanarak Joinoluşturmak ve çalıştırmak Üç tabloyu birleştiren ANSI-99 sorgusu oluşturmak ve çalıştırmak 2 Amaç Veritabanı

Detaylı

SQL TRIGGERS (Tetikleyiciler)

SQL TRIGGERS (Tetikleyiciler) Trigger kelime anlamı olarak tetikleyici demektir. Trigger, SQL de bir sorgu çalıştırdığımızda, başka bir sorgunun çalışmasını sağlamak için yazılan koddur. Mesela bir tablodan kayıt sildiğimizde, başka

Detaylı

Her Yönüyle SQL Enjeksiyonu. OWASP-Türkiye Bünyamin Demir

Her Yönüyle SQL Enjeksiyonu. OWASP-Türkiye Bünyamin Demir Her Yönüyle SQL Enjeksiyonu OWASP-Türkiye Bünyamin Demir Bünyamin Demir ( @bunyamindemir ) OWASP Türkiye Bölüm Lideri Founder & CTO @ Enforsec Ltd. Sızma Testleri Uzmanı Web, Mobil, Network, SCADA, Wireless,

Detaylı

Veri Tabanı ve Yönetimi

Veri Tabanı ve Yönetimi Veri Tabanı ve Yönetimi Transaction Trigger 1Muhammer İLKUÇAR, MAKÜ-2011 BURDUR TRANSACTİON TRANSACTİON: İşlem bütünlüğü sağlar. Tranasction bloğu içindeki komutlar bir bütün olarak işlenir. Komutların

Detaylı

YAPISAL SORGULAMA DİLİ. BARIŞ ARIBURNU barisariburnu.com

YAPISAL SORGULAMA DİLİ. BARIŞ ARIBURNU barisariburnu.com YAPISAL SORGULAMA DİLİ BARIŞ ARIBURNU barisariburnu.com barisariburnu.@gmail.com SQL, insanların veritabanı sistemleri ile konuşmasını sağlayan popüler bir dildir. SQL, tüm veritabanı programlarında kullanılabilir.

Detaylı

Bölüm 4: DDL Veri Tanımlama Dili

Bölüm 4: DDL Veri Tanımlama Dili Bölüm 4: DDL Veri Tanımlama Dili -43- Dr. Serkan DİŞLİTAŞ DDL (Data Definition Language Veri Tanımlama Dili : Bu kategorideki SQL komutları ile veritabanları, tablo, görünüm ve indekslerin yaratılması,

Detaylı

Sorgudan elde edilen değerin değişkenlere aktarılmasını sağlar. Sorgudan tek satır dönmesi gerekir. Çok satır dönerse hata verir.

Sorgudan elde edilen değerin değişkenlere aktarılmasını sağlar. Sorgudan tek satır dönmesi gerekir. Çok satır dönerse hata verir. Oracle (Devam) SELECT INTO Deyimi Sorgudan elde edilen değerin değişkenlere aktarılmasını sağlar. Sorgudan tek satır dönmesi gerekir. Çok satır dönerse hata verir. Genel ifade: SELECT kolonisimler INTO

Detaylı

Veritabanı Tasarımı. Seriler ile Çalışma

Veritabanı Tasarımı. Seriler ile Çalışma Veritabanı Tasarımı Seriler ile Çalışma Konular Bir serinin en az üç kullanışlı özelliğini listelemek Bir seri oluşturan SQL ifadesini yazmak ve çalıştırmak Veri sözlüğünü bir seri tanımını onaylamak için

Detaylı

Örnek: HAFTA12B isimli bir kullanıcı tanımlayalım. Bu kullanıcıya gerekli yetkileri verelim.

Örnek: HAFTA12B isimli bir kullanıcı tanımlayalım. Bu kullanıcıya gerekli yetkileri verelim. NOT: Diyelim ki, bir müşteri tablosu var, bu tablodan vwmusteri isminde bir view oluşturduk. Eğer müşteri tablosuna yeni bir kolon eklenirse veya müşteri tablosundan bir kolon silinirse. vwmusteri viewi

Detaylı

Aşağıdaki tabloyu inceleyin. Yeni kayıt girme, var olan bir kaydı silme veya güncelleme işlemlerini bu tabloya göre yapacağız.

Aşağıdaki tabloyu inceleyin. Yeni kayıt girme, var olan bir kaydı silme veya güncelleme işlemlerini bu tabloya göre yapacağız. Bu Derste Öğrenecekleriniz: 1- Tabloya Veri (Yeni Kayıt) Ekleme 2- Kayıt Silme 3- Kayıt Güncelleme Aşağıdaki tabloyu inceleyin. Yeni kayıt girme, var olan bir kaydı silme veya güncelleme işlemlerini bu

Detaylı

Veritabanı sistemlerinde veri bütünlüğünü sağlayabilmek için CONSTRAINTS olarak adlandırılan bazı zorlayıcı ifadeler kullanılabilir.

Veritabanı sistemlerinde veri bütünlüğünü sağlayabilmek için CONSTRAINTS olarak adlandırılan bazı zorlayıcı ifadeler kullanılabilir. VERİ BÜTÜNLÜĞÜ VTYS lerde veri bütünlüğünü sağlamanın iki temel yolu vardır; Tanımlanabilir veri bütünlüğü ve prosedürel veri bütünlüğü. Tanımlanabilir veri bütünlüğü, tanımlanan nesnelerin kendi özellikleri

Detaylı

-- işareti tek satırlık açıklamalarda kullanılır. Açıklama olarak yazılan satırın önüne konulması yeterlidir.

-- işareti tek satırlık açıklamalarda kullanılır. Açıklama olarak yazılan satırın önüne konulması yeterlidir. T-SQL KODLARİ İÇERİSİNE AÇIKLAMA EKLEME Bir veya daha fazla satırın çalıştırılmasını Önlemek için veya /*... */" ifadeleri kullanılır. -- işareti tek satırlık açıklamalarda kullanılır. Açıklama olarak

Detaylı

Tablolar Arası İlşikiler ve Alan Özellikleri. Şekil 1. Magaza veritabanının tabloları ve tablolar arasındaki ilişkiler

Tablolar Arası İlşikiler ve Alan Özellikleri. Şekil 1. Magaza veritabanının tabloları ve tablolar arasındaki ilişkiler SQL'de Veri İşleme Komutları SQL'de verileri işlemek için kullanılan komutlara DML (Data Manipulation Language Veri İşleme Dili) denilmektedir. Bu komutlar ile oluşturulan ifadeler tablolara kayıt eklemek,

Detaylı

Veritabanı Tasarımı. Veritabanı Hareketleri

Veritabanı Tasarımı. Veritabanı Hareketleri Veritabanı Tasarımı Veritabanı Hareketleri Konular Veri hareketleri ile ilgili olarak COMMIT, ROLLBACK ve SAVEPOINT terimlerini tanımlamak COMMIT, ROLLBACK ve SAVEPOINT ifadelerinin üç avantajını listelemek

Detaylı

SQL e Giriş. Uzm. Murat YAZICI

SQL e Giriş. Uzm. Murat YAZICI SQL e Giriş Uzm. Murat YAZICI SQL (Structured Query Language) - SQL Türkçe de Yapısal Sorgulama Dili anlamına gelmektedir ve ilişkisel veritabanlarında çok geniş bir kullanım alanına sahiptir. - SQL ile

Detaylı

SORGULAR. Öğr.Gör.Volkan Altıntaş

SORGULAR. Öğr.Gör.Volkan Altıntaş SORGULAR Öğr.Gör.Volkan Altıntaş SORGULAR VE ÇEŞİTLERİ Seçme Sorguları: En sık kullanılan sorgu türüdür. Seçme sorguları, bilgileri veri sayfası görünümü nde gösteren veri tabanı nesnesi türüdür. Sorgu,

Detaylı

Veritabanı Tasarımı. SQL Deyimi Anatomisi

Veritabanı Tasarımı. SQL Deyimi Anatomisi Veritabanı Tasarımı SQL Deyimi Anatomisi Amaç Bu ders aşağıdaki hedefleri kapsamaktadır: Projeksiyon (projection), seçim (selection) ve birleştirme (join) ifadelerini doğru fonksiyonları/yetenekleri ile

Detaylı

BÖLÜM- 9: KULLANICI ERİŞİMLERİNİ YÖNETMEK

BÖLÜM- 9: KULLANICI ERİŞİMLERİNİ YÖNETMEK BÖLÜM- 9: KULLANICI ERİŞİMLERİNİ YÖNETMEK Sistem yetkileri Nesne yetkileri Tablolar uzerinde verilebilecek yetkiler Roller Roller ve yetkiler aras.ndaki farklar KULLANICI ERİŞİMLERİ Kullanıcılar bir Username

Detaylı

Veri Tabanı-I 9.Hafta

Veri Tabanı-I 9.Hafta Veri Tabanı-I 9.Hafta SELECT komutu 1 SELECT YAPISI SELECT FROM [WHERE ] , veritabanından değerleri alınacak olan kolonların listesidir. kolon_listesi

Detaylı

Tablolar Arası İlşikiler ve Alan Özellikleri Siparis.musteri_no musteri.musteri_no Siparis.urun_kodu musteri.urun_kodu

Tablolar Arası İlşikiler ve Alan Özellikleri Siparis.musteri_no musteri.musteri_no Siparis.urun_kodu musteri.urun_kodu SQL'DE VERİ İŞLEME KOMUTLARI SQL'de verileri işlemek için kullanılan komutlara DML (Data Manipulation Language Veri İşleme Dili) denilmektedir. Bu komutlar ile oluşturulan ifadeler tablolara kayıt eklemek,

Detaylı

BAŞLAYINIZ DENİLMEDEN SORU KİTAPÇIĞINI AÇMAYINIZ.

BAŞLAYINIZ DENİLMEDEN SORU KİTAPÇIĞINI AÇMAYINIZ. KİTAPÇIK TÜRÜ A T.C. MİLLÎ EĞİTİM BAKANLIĞI YENİLİK VE EĞİTİM TEKNOLOJİLERİ GENEL MÜDÜRLÜĞÜ Ölçme, Değerlendirme ve Yerleştirme Grup Başkanlığı 1. GRUP BİLGİSAYAR MÜHENDİSİ MALİYE BAKANLIĞI PERSONELİNE

Detaylı

Laboratuvar 2 Tek Kayıt Fonksiyonları

Laboratuvar 2 Tek Kayıt Fonksiyonları Laboratuvar 2 Tek Kayıt Fonksiyonları Fonksiyonlar sıfır veya daha fazla bağımsız değişken alan ve sonuçta sadece bir değer döndüren programlardır. Oracle ile birlikte birkaç hazır fonksiyon gelmektedir.

Detaylı

VERİTABANI ve YÖNETİMİ

VERİTABANI ve YÖNETİMİ VERİTABANI ve YÖNETİMİ Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü 2 BÖLÜM -7- VERİLERİ GRUPLAYARAK ANALİZ ETMEK 3 Genel Bakış Grup fonksiyonlarının tanımlanması, Gruplama işlemlerini, Gruplama

Detaylı

Veritabanı Tasarımı. Kullanıcı Erişimini Kontrol Etme

Veritabanı Tasarımı. Kullanıcı Erişimini Kontrol Etme Veritabanı Tasarımı Kullanıcı Erişimini Kontrol Etme Konular Nesne ayrıcalıkları ve sistem ayrıcalıkları arasındaki farkı karşılaştırma Bir kullanıcının bir veritabanınaerişimini etkinleştirmek için gerekli

Detaylı

SQL'e Giriş. SELECT Deyimi. SQL Komutları. 1. DDL (Data Definition Language - Veri Tanımlama Dili)

SQL'e Giriş. SELECT Deyimi. SQL Komutları. 1. DDL (Data Definition Language - Veri Tanımlama Dili) SQL'e Giriş SQL komutları kullanılarak aşağıdaki işlemler yapılabilir: Veritabanı nesnelerinin oluşturulması ve bu nesnelerle ilgili işlemlerin yapılması Bilgilerin istenilen koşullara göre görüntülenmesi

Detaylı

Basit SQL Sorguları Veritabanından verilerin SELECT cümleleri ile alınması işlemine sorgulama denir.

Basit SQL Sorguları Veritabanından verilerin SELECT cümleleri ile alınması işlemine sorgulama denir. SQL SELECT CÜMLELERİ Oracle birçok kullanışlı ve güçlü özellikleri olan bir veritabanıdır. Bu özelliklerinin birçoğu SQL ile ilgilidir. VTYS lerinin çoğunluğunda veriler ile çalışmak için SQL kullanılmaktadır.

Detaylı