Oracle'dan PostgreSQL'e geçiş

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

Download "Oracle'dan PostgreSQL'e geçiş"

Transkript

1 Oracle'dan PostgreSQL'e geçiş Devrim Gündüz Principal Systems EnterpriseDB devrim.gunduz@enterprisedb.com Twitter Facebook: /DevrimGunduzTR Linkedin: Web : EnterpriseDB Corporation. All rights reserved.

2 Başlamadan önce... #InternetteSansüreHayır! Akademik Bilişim 2014 Oracle Uygulamalarınızı PostgreSQL'e Aktarmak 2

3 Kim bu adam? Yani ben: 12 yıldan fazla bir süredir PostgreSQL'e katkı Hacker değilim RPM, web sitesi EnterpriseDB İstanbul! \m/ Güneş Deniz'in aslan babası, Burcu'nun sevgilisi, Deniz'in dayısı, Anıl'ın abisi. Akademik Bilişim 2014 Oracle Uygulamalarınızı PostgreSQL'e Aktarmak 3

4 Uyarı! Bilelim ki: 12 yıllık seminerler 2 saatte bitmeyen seminerler 1 kez bile olan şey değil Kumanya! Çıkışlar 500 lira. Akademik Bilişim 2014 Oracle Uygulamalarınızı PostgreSQL'e Aktarmak 4

5 Geçiş bu mudur? Akademik Bilişim 2014 Oracle Uygulamalarınızı PostgreSQL'e Aktarmak 5

6 Aslında: Akademik Bilişim 2014 Oracle Uygulamalarınızı PostgreSQL'e Aktarmak 6

7 PostgreSQL'de Ölçekleme 7 Ajanda 1. Bu geçiş neden olmalı? 2. Genel durum özeti 3. SQL tümcelerinin aktarılması 4. PL/SQL'den PL/PgSQL'e geçiş 5. Geçiş araçları 6. Örnekler

8 PostgreSQL'de Ölçekleme 8 Ajanda 1. Bu geçiş neden olmalı? 2. Genel durum özeti 3. SQL tümcelerinin aktarılması 4. PL/SQL'den PL/PgSQL'e geçiş 5. Geçiş araçları 6. Örnekler

9 PostgreSQL'de Ölçekleme 9 Bu geçiş neden olmalı? Oracle'da Tom var: Ask Tom: PostgreSQL'de Tom Lane var! Ask Tom: tgl@sss.pgh.pa.us :-)

10 PostgreSQL'de Ölçekleme 10 Bu geçiş neden olmalı?... Maliyet Açık kaynak kod Gelişmiş özellikler Daha büyük destek imkanı Güvenirlik

11 PostgreSQL'de Ölçekleme 11 Bu geçiş neden olmalı? Birçok dil desteği! Fonksiyonlar! Java, Perl, Python, Ruby, C, C++, Bash, TCL, TK,...

12 PostgreSQL'de Ölçekleme 12 Bu geçiş neden olmalı? Bizim yan komşunun oğlu Oracle'dan kurtulmuş; sen hala geçiş yapamadın!

13 PostgreSQL'de Ölçekleme 13 Bu geçiş neden olmalı? Bizim yan komşunun oğlu Oracle'dan kurtulmuş; sen hala geçiş yapamadın! Offff, yan masadakine bak ne güzel geçiş yaptı Oracle'dan PostgreSQL'e!

14 PostgreSQL'de Ölçekleme 14 Bu geçiş neden olmalı? Bizim yan komşunun oğlu Oracle'dan kurtulmuş; sen hala geçiş yapamadın! Offff, yan masadakine bak ne güzel geçiş yaptı Oracle'dan PostgreSQL'e! O PostgreSQL buraya gelecek!

15 PostgreSQL'de Ölçekleme 15 Bu geçiş neden olmalı? Bizim yan komşunun oğlu Oracle'dan kurtulmuş; sen hala geçiş yapamadın! Offff, yan masadakine bak ne güzel geçiş yaptı Oracle'dan PostgreSQL'e! O PostgreSQL buraya gelecek! Askerdeyiz, komutanla bir geçiş yapıyoruz Oracle'dan...

16 PostgreSQL'de Ölçekleme 16 Bu geçiş neden olmalı? Bizim yan komşunun oğlu Oracle'dan kurtulmuş; sen hala geçiş yapamadın! Offff, yan masadakine bak ne güzel geçiş yaptı Oracle'dan PostgreSQL'e! O PostgreSQL buraya gelecek! Askerdeyiz, komutanla bir geçiş yapıyoruz Oracle'dan... Kızlar, bizim Semiha Oracle'dan geçiş yapmış; bizim de PostgreSQL'e geçmemiz gerekli!

17 PostgreSQL'de Ölçekleme 17 Bu geçiş neden olmalı? Bizim yan komşunun oğlu Oracle'dan kurtulmuş; sen hala geçiş yapamadın! Offff, yan masadakine bak ne güzel geçiş yaptı Oracle'dan PostgreSQL'e! O PostgreSQL buraya gelecek! Askerdeyiz, komutanla bir geçiş yapıyoruz Oracle'dan... Kızlar, bizim Semiha Oracle'dan geçiş yapmış; bizim de PostgreSQL'e geçmemiz gerekli! Aslında Oracle ucusdşlkddföç.çö.çsdöf

18 PostgreSQL'de Ölçekleme 18 Bu geçiş neden olmalı? Bizim yan komşunun oğlu Oracle'dan kurtulmuş; sen hala geçiş yapamadın! Offff, yan masadakine bak ne güzel geçiş yaptı Oracle'dan PostgreSQL'e! O PostgreSQL buraya gelecek! Askerdeyiz, komutanla bir geçiş yapıyoruz Oracle'dan... Kızlar, bizim Semiha Oracle'dan geçiş yapmış; bizim de PostgreSQL'e geçmemiz gerekli! Aslında Oracle ucusdşlkddföç.çö.çsdöf Tabii ki bunlar değil!

19 Başlamadan önce... #InternetteSansüreHayır! Akademik Bilişim 2014 Oracle Uygulamalarınızı PostgreSQL'e Aktarmak 19

20 PostgreSQL'de Ölçekleme 20 Ajanda 1. Bu geçiş neden olmalı? 2. Genel durum özeti 3. SQL tümcelerinin aktarılması 4. PL/SQL'den PL/PgSQL'e geçiş 5. Geçiş araçları 6. Örnekler

21 PostgreSQL'de Ölçekleme 21 Oracle'dan PostgreSQL'e geçiş Teknik olmayan bileşenler İdari sıkıntılar Yazılım aktarma süreci İhale süreci! Çalışan uygulamanın değiştirilmesi Kimse Oracle kullandığı için işten atılmamıştır (bitmediniz...)... (Bitmez dertler)

22 PostgreSQL'de Ölçekleme 22 Oracle'dan PostgreSQL'e geçiş Teknik olmayan bileşenler Sihirbaz yok! %40, %40 ve %20 durumu :) SQL standartlarına uygun olmayan yazılımların standartlara çekilmesi süreci...

23 PostgreSQL'de Ölçekleme 23 Oracle'dan PostgreSQL'e geçiş Teknik olmayan bileşenler Yazılım aktarma süreci demiş miydik? Yönetim süreci demiş miydik? Destek imkanları demiş miydik? (Üstteki soruları tekrar sormuş muyduk?

24 PostgreSQL'de Ölçekleme 24 Oracle'dan PostgreSQL'e geçiş Teknik olmayan bileşenler Sürecin belgelendirilmesi Tecrübe aktarımı Sürüm kontrol yazılımı! Düzgün test araçları

25 PostgreSQL'de Ölçekleme 25 Ajanda 1. Bu geçiş neden olmalı? 2. Genel durum özeti 3. SQL tümcelerinin aktarılması 4. PL/SQL'den PL/PgSQL'e geçiş 5. Geçiş araçları 6. Örnekler

26 Oracle'dan PostgreSQL'e geçiş Sayısal veri tipleri Oracle Number (precision, scale) PostgreSQL smallint,int2 (2byte) int,integer (4 byte) bigint, int8 (8 byte) number(p,s) numeric(p,s) real (4 byte) double (8 bytes) Özgür Web Teknolojileri Günleri 26

27 Oracle'dan PostgreSQL'e geçiş Sayısal veri tipleri <, >, <=, >= +, -, *, / %, ^ /, Özgür Web Teknolojileri Günleri 27

28 Oracle'dan PostgreSQL'e geçiş Sayısal fonksiyonlar abs(), mod(), ceil(),sqrt(), sin(), cos(), tan(), cot(), random(), round(),... Özgür Web Teknolojileri Günleri 28

29 Oracle'dan PostgreSQL'e geçiş Sayısal veri tipleri Oracle char, nchar varchar2, nvarchar2 PostgreSQL varchar char text clob, nclob varchar2, nvarchar2 Özgür Web Teknolojileri Günleri 29

30 Oracle'dan PostgreSQL'e geçiş Karakter veri tipleri Ortak karakter fonksiyonları: Lower(), upper(), convert(), md5(), char_length(), encode(), devode(), lpad(), rpad(), ltrim(), rtrim(), substr(), regex_replace(),... Karakter karşılaştırma operatörleri LIKE, ILIKE, <, >, <=, >=, <>, ve birçok regexp operatörü (!~, ~, vs) Özgür Web Teknolojileri Günleri 30

31 Başlamadan önce... #InternetteSansüreHayır! Akademik Bilişim 2014 Oracle Uygulamalarınızı PostgreSQL'e Aktarmak 31

32 Oracle'dan PostgreSQL'e geçiş Zamansal veri tipleri Oracle date interval timestamp PostgreSQL date interval timestamp (tz ile ya da tz olmadan) Range!!! Özgür Web Teknolojileri Günleri 32

33 Oracle'dan PostgreSQL'e geçiş Zamansal veri tipleri Oracle Sysdate PostgreSQL Now(), current_timestamp() TRUNC(sysdate) current_date, date_trunc() (orafce!) sysdate current_timestamp + '84 hours'::interval Özgür Web Teknolojileri Günleri 33

34 PostgreSQL'de Ölçekleme 34 Oracle'dan PostgreSQL'e geçiş Zamansal fonksiyonlar Orafce içinde birçok fonksiyon: next_day(), last_day(), add_months()

35 PostgreSQL'de Ölçekleme 35 Oracle'dan PostgreSQL'e geçiş Binary veri tipi Oracle'daki raw bfile -> PostgreSQL bytea Oracle'daki bfile -> PostgreSQL'de large object Bytea 1 GB'dan az veriler için kullanılır. Large objectler TOAST edilirler.

36 PostgreSQL'de Ölçekleme 36 Oracle'dan PostgreSQL'e geçiş Özel veri tipleri Oracle'daki raw bfile -> PostgreSQL bytea Oracle'daki bfile -> PostgreSQL'de large object Bytea 1 GB'dan az veriler için kullanılır. Large objectler TOAST edilirler.

37 PostgreSQL'de Ölçekleme 37 Oracle'dan PostgreSQL'e geçiş - Genel Sözdizimi ORACLE'DA NESNELER BÜYÜK HARFE ÇEVİRİLİRLER. postgresql'deyse tüm nesneler küçük harfe çevirilirler. Çift tırnak SQL standardı :(

38 PostgreSQL'de Ölçekleme 38 Oracle'dan PostgreSQL'e geçiş - Genel Sözdizimi Dual tablosu PostgreSQL'de yok Gerek de yok! Orafce Kolonlarda takma ad kullanılırken AS'e gerek yok (iki veritabanı sunucusunda da)

39 PostgreSQL'de Ölçekleme 39 Oracle'dan PostgreSQL'e geçiş - Fonksiyonlar Büyük farklılıklar yok PL/SQL -> PL/pgSQL Orafce

40 PostgreSQL'de Ölçekleme 40 Oracle'dan PostgreSQL'e geçiş - Fonksiyonlar Oracle: SELECT sequence_adı.nextval FROM dual; PostgreSQL: SELECT nextval('sequence_adı');

41 PostgreSQL'de Ölçekleme 41 Oracle'dan PostgreSQL'e geçiş - Outer Joinler Oracle: SELECT * FROM t1,t2 WHERE t1.c1 = t2.c2(+) PostgreSQL: SELECT * FROM t1 LEFT JOIN t2 ON t1.c1 = t2.c2

42 PostgreSQL'de Ölçekleme 42 Oracle'dan PostgreSQL'e geçiş - Outer Joinler Oracle: SELECT * FROM t1, t2, t3 WHERE t1.c1 (+) = t2.c2 AND t3.c3(+) = t2.c2 PostgreSQL: SELECT * FROM t1 RIGHT JOIN t2 ON (t1.c1 = t2.c2) LEFT JOIN t3 ON (t3.c3 = t2.c2)

43 PostgreSQL'de Ölçekleme 43 Oracle'dan PostgreSQL'e geçiş - SQL dönüşümleri Oracle: rownum PostgreSQL: LIMIT Oracle: SELECT * FROM (SELECT customer_id FROM payments ORDER BY amount DESC) WHERE rownum <= 10; PostgreSQL: SELECT customer_id FROM payments ORDER BY amount DESC LIMIT 10;SELECT * FROM t1, t2, t3 WHERE t1.c1 (+) = t2.c2 AND t3.c3(+) = t2.c2

44 PostgreSQL'de Ölçekleme 44 Oracle'dan PostgreSQL'e geçiş - SQL dönüşümleri Oracle: SELECT * FROM (SELECT customer_id FROM payments ORDER BY amount DESC) WHERE rownum > 20 AND rownum <= 30; PostgreSQL: SELECT customer_id FROM payments ORDER BY amount DESC LIMIT 20 OFFSET 10;

45 PostgreSQL'de Ölçekleme 45 Oracle'dan PostgreSQL'e geçiş - Minus - Except Oracle'da MINUS -> PostgreSQL'de EXCEPT Doğrudan karşılık değil

46 PostgreSQL'de Ölçekleme 46 Oracle'dan PostgreSQL'e geçiş - Trigger Oracle: CREATE TRIGGER trg1 AFTER... ON t1 AS BEGIN... END; PostgreSQL: CREATE OR REPLACE FUNCTION trg1_func() RETURNS TRIGGER LANGUAGE... AS $$... $$; CREATE TRIGGER trg1 AFTER ON table EXECUTE PROCEDURE trg1_func();

47 PostgreSQL'de Ölçekleme 47 Oracle'dan PostgreSQL'e geçiş - Trigger Oracle'da triggerların kendisine ait söz dizimi vardır. PostgreSQL'de ise triggerlar daha önceden tanımlanan fonksiyonların çağırılmasıdır.

48 PostgreSQL'de Ölçekleme 48 Oracle'dan PostgreSQL'e geçiş - Trigger Oracle: CREATE TRIGGER trg1 AFTER... ON t1 AS BEGIN... END; PostgreSQL: CREATE OR REPLACE FUNCTION trg1_func() RETURNS TRIGGER LANGUAGE... AS $$... $$; CREATE TRIGGER trg1 AFTER ON table EXECUTE PROCEDURE trg1_func();

49 PostgreSQL'de Ölçekleme 49 Oracle'dan PostgreSQL'e geçiş - ROWNUM ve ROWID Oracle'daki ROWNUM'ları, daha önce gördüğümüz gibi LIMIT kullanarak tekrar yazabilirsiniz. Bir diğer alternatif de generate_series() kullanmak olabilir. ROWID ise PostgreSQL'deki ctid'ye denk gelir. Mümkünse kodun ilgili kısmını baştan yazıp bundan kurtulmak gerekli.

50 PostgreSQL'de Ölçekleme 50 Oracle'dan PostgreSQL'e geçiş - XML Uyumsuzluklar olabilir Dönüşüm mümkün Test önemli!

51 PostgreSQL'de Ölçekleme 51 Oracle'dan PostgreSQL'e geçiş - Partitioning PostgreSQL'de composite_partitioning yoktur. Range, hash ve list partitioning vardır. Oracle'ın sözdizimi PostgreSQL'e göre daha gelişmiştir. CREATE TABLE aşamasında partitioning yapılabilir. (PPAS)

52 PostgreSQL'de Ölçekleme 52 Oracle'dan PostgreSQL'e geçiş - CONNECT BY Oracle'daki CONNECT BY için PostgreSQL'de contrib/tablefunc kullanılabilir.

53 Başlamadan önce... #InternetteSansüreHayır! Akademik Bilişim 2014 Oracle Uygulamalarınızı PostgreSQL'e Aktarmak 53

54 PostgreSQL'de Ölçekleme 54 Ajanda 1. Bu geçiş neden olmalı? 2. Genel durum özeti 3. SQL tümcelerinin aktarılması 4. PL/SQL'den PL/PgSQL'e geçiş 5. Geçiş araçları 6. Örnekler

55 PostgreSQL'de Ölçekleme 55 Oracle'dan PostgreSQL'e geçiş - PL/SQL -> PL/pgSQL dönüşümü PL/pgSQL Oracle uyumluluğunu ön plana alan internal bir dil. Aşağıdaki adreste önemli ipuçları var: g.html

56 PostgreSQL'de Ölçekleme 56 Oracle'dan PostgreSQL'e geçiş - PL/SQL -> PL/pgSQL dönüşümü Fonksiyon yaratırken sözdizimi farklıdır: Oracle: CREATE FUNCTION func1 RETURN veri_tipi PostgreSQL: CREATE FUNCTION func1 RETURNS veri_tipi

57 PostgreSQL'de Ölçekleme 57 Oracle'dan PostgreSQL'e geçiş - PL/SQL -> PL/pgSQL dönüşümü PostgreSQL'de package yok Schema PPAS

58 PostgreSQL'de Ölçekleme 58 Oracle'dan PostgreSQL'e geçiş - PL/SQL -> PL/pgSQL dönüşümü Cursor desteği iki veritabanında da gelişmiştir: Oracle: CURSOR cursor1 IS SELECT...; BEGIN FOR x IN cursor1 LOOP PostgreSQL: BEGIN FOR x IN SELECT... LOOP

59 PostgreSQL'de Ölçekleme 59 Ajanda 1. Bu geçiş neden olmalı? 2. Genel durum özeti 3. SQL tümcelerinin aktarılması 4. PL/SQL'den PL/PgSQL'e geçiş 5. Geçiş araçları 6. Örnekler

60 PostgreSQL'de Ölçekleme 60 Oracle'dan PostgreSQL'e geçiş - Ora2PG Ora2PG Hızlı geliştirme süreci Oracle'daki tablo tanımlarının PostgreSQL'e aktarılmasını sağlar bunu Oracle veritabanına bağlanarak yapar. Perl ile yazılmıştır; çalışması için birkaç Perl kütüphanesi gerekecektir (Örnek: DBD-Oracle)

61 PostgreSQL'de Ölçekleme 61 Oracle'dan PostgreSQL'e geçiş - Orafce Orafce... Oracle uyumluluk fonksiyonlarını PostgreSQL'e ekler. Dual tablosunu ekler :-)

62 PostgreSQL'de Ölçekleme 62 Oracle'dan PostgreSQL'e geçiş Postgres Plus Advanced Server Postgres Plus Advanced Server... Ticari bir ürün Oracle uyumlu PostgreSQL Snapshot, replikasyon PL/SQL uyumu

63 PostgreSQL'de Ölçekleme 63 Ajanda 1. Bu geçiş neden olmalı? 2. Genel durum özeti 3. SQL tümcelerinin aktarılması 4. PL/SQL'den PL/PgSQL'e geçiş 5. Geçiş araçları 6. Örnekler

64 PostgreSQL'de Ölçekleme 64 Geçiş örnekleri Turkcell Sony OE Bilyoner TJK Ak Yatırım ABN AMRO NASA Navteq...

65 Aslında: Akademik Bilişim 2014 Oracle Uygulamalarınızı PostgreSQL'e Aktarmak 65

66 Sorular Soruları alalım!...ve tabii ki: #InternetteSansüreHayır! Akademik Bilişim 2014 Oracle Uygulamalarınızı PostgreSQL'e Aktarmak 66

67 Teşekkürler! Akademik Bilişim 2014 Oracle Uygulamalarınızı PostgreSQL'e Aktarmak 67

68 Oracle'dan PostgreSQL'e geçiş Devrim Gündüz Principal Systems EnterpriseDB devrim.gunduz@enterprisedb.com Twitter Facebook: /DevrimGunduzTR Linkedin: Web : EnterpriseDB Corporation. All rights reserved.

Oracle'dan PostgreSQL'e geçiş

Oracle'dan PostgreSQL'e geçiş Oracle'dan PostgreSQL'e geçiş Devrim GÜNDÜZ PostgreSQL Danışmanı devrim@gunduz.org devrim@postgresql.org[.tr] devrim@commandprompt.com Oracle'dan PostgreSQL'e geçiş Bu seminer 1 saatte bitmez sanıyorum;

Detaylı

PostgreSQL'de Ölçekleme

PostgreSQL'de Ölçekleme Devrim Gündüz Principal Systems Engineer @ EnterpriseDB devrim.gunduz@enterprisedb.com Twitter : @DevrimGunduz / @DevrimGunduzTR Linkedin: http://www.linkedin.com/in/devrimgunduz Web : http://www.gunduz.org

Detaylı

PostgreSQL Veritabanı Sunucusu Devrim GÜNDÜZ. devrim@gunduz.org

PostgreSQL Veritabanı Sunucusu Devrim GÜNDÜZ. devrim@gunduz.org PostgreSQL Veritabanı Sunucusu Devrim GÜNDÜZ PostgreSQL Geliştiricisi PostgreSQL DBA devrim@gunduz.org Command Prompt, Inc. devrim@commandprompt.com devrim@postgresql.org[.tr] http://twitter.com/devrimgunduz

Detaylı

PostgreSQL 9.3 Kullanılabilirlik ve Başarım

PostgreSQL 9.3 Kullanılabilirlik ve Başarım PostgreSQL 9.3 Kullanılabilirlik ve Başarım Devrim Gündüz 2013 EnterpriseDB Corporation. All rights reserved. Principal Systems Engineer @ EnterpriseDB devrim.gunduz@enterprisedb.com Twitter : @DevrimGunduz

Detaylı

PostgreSQL ile NoSQL. Gereksinimlerinizi Karşılamak

PostgreSQL ile NoSQL. Gereksinimlerinizi Karşılamak PostgreSQL ile NoSQL Presentation Title Gereksinimlerinizi Karşılamak Presentation Sub-Title Devrim GÜNDÜZ @DevrimGunduz @DevrimGunduzTR Principal Systems Engineer EnterpriseDB devrim.gunduz@enterprisedb.com

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ı

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ı

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ı

ORACLE DA KÜRSÖRLER. Gerekli sistem değişkenleri

ORACLE DA KÜRSÖRLER. Gerekli sistem değişkenleri ORACLE DA KÜRSÖRLER Gerekli sistem değişkenleri SQL%ISOPEN : kürsör açıksa değeri true, kapalı ise değeri false SQL%ROWCOUNT : sql ile işlem gören kayıt sayısı bulunur. SQL%FOUND : sql işlemi sonucu, en

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ı

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ı

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ı

PL/pgSQL SQL Yordamsal Dili

PL/pgSQL SQL Yordamsal Dili PL/pgSQL SQL Yordamsal Dili Devrim GÜNDÜZ devrim@gunduz.org devrim@postgresql.org Teknoloji Destek Merkezi http://www.tdmsoft.com http://seminer.linux.org.tr http://www.gunduz.org/seminer/plpgsql Bu sunu,

Detaylı

EnterpriseDB Kalitesi ile Tanıştırma. Devrim GÜNDÜZ Principal Systems Engineer EnterpriseDB devrim.gunduz@enterprisedb.com

EnterpriseDB Kalitesi ile Tanıştırma. Devrim GÜNDÜZ Principal Systems Engineer EnterpriseDB devrim.gunduz@enterprisedb.com Oracle Presentation Uygulamalarınızı Title Presentation Sub-Title EnterpriseDB Kalitesi ile Tanıştırma Devrim GÜNDÜZ Principal Systems Engineer EnterpriseDB devrim.gunduz@enterprisedb.com Copyright 2010

Detaylı

PostgreSQL - Yeni dönemdeki yeri

PostgreSQL - Yeni dönemdeki yeri PostgreSQL - Yeni dönemdeki yeri Devrim GÜNDÜZ Principals System Engineer @ EnterpriseDB Twitter: @DevrimGunduz Red Hat Certified Engineer Topluluk: devrim@postgresql.org Kişisel: devrim@gunduz.org İş:

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ı

Sorgudan elde edilen değerin değişkenlere aktarılmasını sağlar. Sorgudan tek satır dönmesi gerekir, aksi durumda hata olur.

Sorgudan elde edilen değerin değişkenlere aktarılmasını sağlar. Sorgudan tek satır dönmesi gerekir, aksi durumda hata olur. 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, aksi durumda hata olur. Genel ifade; SELECT koloisimleri INTO değişkenisimleri

Detaylı

PHP+Memory Cache+PostgreSQL Kullanarak Performanslı Veritabanı Uygulaması Geliştirme

PHP+Memory Cache+PostgreSQL Kullanarak Performanslı Veritabanı Uygulaması Geliştirme PHP+Memory Cache+PostgreSQL Kullanarak Performanslı Veritabanı Uygulaması Geliştirme M.Atıf CEYLAN SitenizOlsun.com Giriş Sunum İçeriği Performanstan ne anlıyoruz? Vertitabanı Performansını Artırmak PHP

Detaylı

1 ORACLE 11G DATABASE SERVER LE

1 ORACLE 11G DATABASE SERVER LE Ç NDEK LER 1 ORACLE 11G DATABASE SERVER LE TANIfiALIM 1 Veritaban Sistemleri 1 Genel Bak fl 1 Relational Database ( liflkisel Veritaban ) Sistemleri 3 Neden Oracle Database Server? 5 Verileri Normallefltirme

Detaylı

Veritabanına Giriş. Oğuzhan Ceylan. 19 Eylül 2011

Veritabanına Giriş. Oğuzhan Ceylan. 19 Eylül 2011 Veritabanına Giriş Oğuzhan Ceylan 19 Eylül 2011 Outline Veritabanı MYSQL Mysql Sorgu Komutları Bir veritabanı yaratmak ve kullanmak Veritabanı Veritabanı Verittabanı hangi alanlarda kullanılıyor. Web sitesi

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ı

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ı

6 Aritmetiksel Operatörler ve Hazır Fonksiyonlar

6 Aritmetiksel Operatörler ve Hazır Fonksiyonlar 6 Aritmetiksel Operatörler ve Hazır Fonksiyonlar Veritabanı 1 1 Aritmetiksel Operatörler SELECT adi,soyadi, maas + maas*10/100 zamlimaas FROM tbl_personel select 3*5 select 5+3 select 3*5,3+5, 3/5 select

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ı

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 -10- FONKSİYONLAR 3 Giriş Geçen haftaki derslerimizde Görünümleri (View) ve Stored Procedure (SP) leri öğrendik. Bu hafta

Detaylı

Veritabanı Tasarımı. Büyük/Küçük Harf ve Karakter İşleme

Veritabanı Tasarımı. Büyük/Küçük Harf ve Karakter İşleme Veritabanı Tasarımı Konular Büyük/küçük harf dönüşümü ve karakter işleme yapan tek satır fonksiyonlarını uygulama SQL sorgularında büyük/küçük harf dönüşümü fonksiyonları: LOWER, UPPER ve INITCAP SQL sorgularında

Detaylı

PostgreSQL Veritabanı Sunucusu. 8.2 neler getiriyor?

PostgreSQL Veritabanı Sunucusu. 8.2 neler getiriyor? PostgreSQL Veritabanı Sunucusu 8.2 neler getiriyor? Devrim GÜNDÜZ PostgreSQL Geliştiricisi PostgreSQL Kullanıcıları Derneği devrim@postgresql.org[.tr] Giriş Bu sunuda aşağıdaki konular anlatılacaktır:

Detaylı

2008 09 Güz Yarıyılı MT 487 Bilgisayarda Veri Yapıları Final Çalışma Soruları

2008 09 Güz Yarıyılı MT 487 Bilgisayarda Veri Yapıları Final Çalışma Soruları 2008 09 Güz Yarıyılı MT 487 Bilgisayarda Veri Yapıları Final Çalışma Soruları Hayali bir şirket için BizimŞirket isimli bir veritabanı oluşturulmuş ve aşağıdaki tablolar yapılmıştır. Lütfen tabloları dikkatlice

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ı

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ı

Büyük veri ile neler yaptık?

Büyük veri ile neler yaptık? Büyük veri ile neler yaptık? Devrim Gündüz Principal Systems Engineer @ EnterpriseDB devrim.gunduz@enterprisedb.com Twitter : @DevrimGunduz @EnterpriseDB 2013 EnterpriseDB Corporation. All rights reserved.

Detaylı

PostgreSQL ile Kümeleme Teknikleri

PostgreSQL ile Kümeleme Teknikleri PostgreSQL ile Kümeleme Teknikleri Devrim GÜNDÜZ Principal Systems Engineer @ EntepriseDB PostgreSQL Major Contributor Red Hat Certified Engineer Twitter: @DevrimGunduz Topluluk: devrim@postgresql.org

Detaylı

PostgreSQL - Yeni dönemdeki yeri

PostgreSQL - Yeni dönemdeki yeri PostgreSQL - Yeni dönemdeki yeri Devrim GÜNDÜZ Principals System Engineer @ EnterpriseDB Twitter: @DevrimGunduz Red Hat Certified Engineer Topluluk: devrim@postgresql.org Kişisel: devrim@gunduz.org İş:

Detaylı

ORM & Hibernate. Ahmet Demirelli. SCJP 5.0, SCWCD 1.4 ahmetdemirelli@sabanciuniv.edu

ORM & Hibernate. Ahmet Demirelli. SCJP 5.0, SCWCD 1.4 ahmetdemirelli@sabanciuniv.edu ORM & Hibernate Ahmet Demirelli SCJP 5.0, SCWCD 1.4 ahmetdemirelli@sabanciuniv.edu Sabancı Üniversitesi Bilişim Teknolojileri Yüksek Lisans Programı Seminerleri 2008 Hakkımızda SabancıÜniversitesi BT Yüksek

Detaylı

Fonksiyonlar istenilen deger tipinde dönüs yapabilir. INT, VARCHAR deger döndürebileceğiniz gibi bir tablo da döndürebilirsiniz.

Fonksiyonlar istenilen deger tipinde dönüs yapabilir. INT, VARCHAR deger döndürebileceğiniz gibi bir tablo da döndürebilirsiniz. Fonksiyonlar tamamen işimizi kolaylaştırmak adına sürekli olarak tekrarladığımız sql sorgularına tek bir noktadan erişmemizi sağlar. Buda bize hızlı bir erişim imkanı,hızlı bir hata kontrol mekanizması,

Detaylı

TESİ. indeks. söylenebilir?? bir ilişkidir d) Hiçbiri. veya somutlaştırılmış. düzeyidir? sağlayabilir? sına. d) Hepsi. olabilir? c) Verilerin d) Hepsi

TESİ. indeks. söylenebilir?? bir ilişkidir d) Hiçbiri. veya somutlaştırılmış. düzeyidir? sağlayabilir? sına. d) Hepsi. olabilir? c) Verilerin d) Hepsi 1. 2. 3. 4. 5. 6. Görünüm (view) için özellikle aşağıdakilerden hangisi söylenebilir?? a) Veritabanındaki kayıtlı verileri düzenlemek, yönetmek ve elde etmek için kullanılan bir dildir b) Bir ilişkinin

Detaylı

IN ve NOT IN Tablodaki alan içeriklerine ulaşmak için IN deyimi kullanılır.

IN ve NOT IN Tablodaki alan içeriklerine ulaşmak için IN deyimi kullanılır. Alt Sorgular SQL Serverda sorgu içinde sorgu da oluşturulabilir. Sorgu içinde sorgu, içteki sorgunun dışta olan sorguya değer üretmesidir. Bu, bir değer veya birden fazla değer olabilir. IN ve NOT IN Tablodaki

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ı

KULLANICI TANIMLI FONKSİYONLAR (Devam)

KULLANICI TANIMLI FONKSİYONLAR (Devam) KULLANICI TANIMLI FONKSİYONLAR (Devam) Skaler değerli fonksiyon örneği: Parametre müşteri grubu olacak, eğer grubu parametresi değeri NULL olursa tüm müşteri sayısını, NULL değilse verilen gruptaki müşteri

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ı

TEMEL SQL SORGU ÖRNEKLERİ. Yukarıdaki sorguyu yazıp çalıştırdığımızda db_market adında bir veritabanı oluşturulur.

TEMEL SQL SORGU ÖRNEKLERİ. Yukarıdaki sorguyu yazıp çalıştırdığımızda db_market adında bir veritabanı oluşturulur. TEMEL SQL SORGU ÖRNEKLERİ Sorgu İle Veritabanı Oluşturma create database veritabanı_adı Örnek : create database db_okul Yukarıdaki sorguyu çalıştırdığımızda db_okul adında bir veritabanı oluşturulur. Örnek:

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ı

VERİ TABANI YÖNETİM SİSTEMLERİ II. 5. SQL PROGRAMLAMADA CURSOR (İMLEÇ) ve TRIGGERS (TETİKLEMELER)

VERİ TABANI YÖNETİM SİSTEMLERİ II. 5. SQL PROGRAMLAMADA CURSOR (İMLEÇ) ve TRIGGERS (TETİKLEMELER) BÖLÜM 5 5. SQL PROGRAMLAMADA CURSOR (İMLEÇ) ve TRIGGERS (TETİKLEMELER) 5.1 CURSOR (İMLEÇ) VE ÖZELLİKLERİ. Birden fazla kaydın hafızaya getirilme işlemlerine imleç(cursor) açma denir. İmleç açma, özellikle

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ı

KULLANICI TANIMLI FONKSİYONLAR (Devam)

KULLANICI TANIMLI FONKSİYONLAR (Devam) KULLANICI TANIMLI FONKSİYONLAR (Devam) Skaler değerli fonksiyon örneği: Parametre müşteri grubu olacak, eğer grubu parametresi değeri NULL olursa, tüm müşteri sayısını, NULL değilse girilen gruptaki müşteri

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ı

PostgreSQL'de Uygulamalı. (Streaming Replication. Standby)

PostgreSQL'de Uygulamalı. (Streaming Replication. Standby) PostgreSQL'de Uygulamalı Gömülü Presentation Replikasyon Title (Streaming Replication Presentation Sub-Title ve Hot Standby) Devrim GÜNDÜZ Principal Systems Engineer EnterpriseDB devrim.gunduz@enterprisedb.com

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ı

Kodlamadan Dağıtıma PostgreSQL'de Eklenti Geliştirmek Burak Yücesoy

Kodlamadan Dağıtıma PostgreSQL'de Eklenti Geliştirmek Burak Yücesoy Kodlamadan Dağıtıma PostgreSQL'de Eklenti Geliştirmek Burak Yücesoy PostgreSQL eklentisi nedir? PostgreSQL'e yeni yetenekler ekleyen her türlü yazılım bir PostgreSQL eklentisidir. Genellikle her eklenti

Detaylı

Kullanıcı tanımlı fonksiyonlar SQL2000 ile gelen özelliklerden biridir. Fonksiyonlar tek bir değer veya tablo döndürmek için kullanılır.

Kullanıcı tanımlı fonksiyonlar SQL2000 ile gelen özelliklerden biridir. Fonksiyonlar tek bir değer veya tablo döndürmek için kullanılır. KULLANICI TANIMLI FONKSİYONLAR Kullanıcı tanımlı fonksiyonlar SQL2000 ile gelen özelliklerden biridir. Fonksiyonlar tek bir değer veya tablo döndürmek için kullanılır. Fonksiyonları veritabanı programlamada

Detaylı

Aşağıdaki şemaya dikkat edin. Sorgulamalarımızı genellikle bu şemaya göre yapacağız.

Aşağıdaki şemaya dikkat edin. Sorgulamalarımızı genellikle bu şemaya göre yapacağız. Bu Derste Öğrenecekleriniz: 1- Sorgulama Yaparken Gruplama (GROUP BY) 2- Gruplamada Koşul Kullanımı (HAVING) 3- Sorgulama Yaparken Sıralama (ORDER BY) 4- Sorgulamalarda İşlem Yapma 5- Güncellemelerde İşlem

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ı

HP Yazılım Zirvesi - İstanbul 20 May 2015 - Wyndham Grand Levent Erdem Alaşehir / Finansbank Güvenlik Olay Korelasyonunda Büyük Veri Kullanımı

HP Yazılım Zirvesi - İstanbul 20 May 2015 - Wyndham Grand Levent Erdem Alaşehir / Finansbank Güvenlik Olay Korelasyonunda Büyük Veri Kullanımı HP Yazılım Zirvesi - İstanbul 20 May 2015 - Wyndham Grand Levent Erdem Alaşehir / Finansbank Güvenlik Olay Korelasyonunda Büyük Veri Kullanımı Ajanda Mevcut Durum Vertica ile Çözüm Analiz Mevcut Durum

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 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ı

Fonksiyonlar, Count, Sum, Avg, Max, Mın, Lower, Upper, Length, Round, Mod, Left, Right, Concat, If

Fonksiyonlar, Count, Sum, Avg, Max, Mın, Lower, Upper, Length, Round, Mod, Left, Right, Concat, If Mın, Lower, Upper, Length, Round, Sql kendi içinde bir cok fonksiyonu barındırır, bunlar sayım ve hesaplama için kullanılabilir. SQL FONKSİYONLARI Fonksiyon sözdizimi kuruluşu; SELECT fonksiyon(kolon )

Detaylı

BLG4134 Görsel Programlama III. Öğr. Grv. Aybike ŞİMŞEK

BLG4134 Görsel Programlama III. Öğr. Grv. Aybike ŞİMŞEK BLG4134 Görsel Programlama III Öğr. Grv. Aybike ŞİMŞEK CV_EKLE isimli bir veritabanı oluşturun. CV isimli tabloyu aşağıdaki şekilde oluşturun. Aşağıdaki kod ile bir stored procedure oluşturun. Bunun için

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 SQL Fonksiyonları Fonksiyonlar SQL içinde bazı hesaplamaları yapabilmektedir.

Detaylı

Gruplama (aggregate) fonksiyonları bir dizi değer üzerinde hesaplama yaparlar ve bir sonuç

Gruplama (aggregate) fonksiyonları bir dizi değer üzerinde hesaplama yaparlar ve bir sonuç I. SQL FONKSİYONLARI SQL Server'da Fonksiyonlar, hesaplamalarda ve özellikle sistem hakkında bilgi almada yaygın olarak kullanılan araçlardır. Transact-SQL (T-SQL) programlama dilinde değişik kategorilerle

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ı

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ı

Bilgisayar Uygulamaları. MySql

Bilgisayar Uygulamaları. MySql MySql MySql,; Oracle, Progress, MsSql, PostgreSql gibi veri tabanı programıdır. Kullanılan dil SQL (Structured Query Language) yapısal sorgulama dilidir. Lisansı GNU General Public License olarak bilinen

Detaylı

Veritabanı Tasarımı. Veri Türleri Kullanma

Veritabanı Tasarımı. Veri Türleri Kullanma Veritabanı Tasarımı Veri Türleri Kullanma Konular TIMESTAMP ve TIMESTAMP WITH TIME ZONE sütun türlerini kullanarak tablo oluşturma INTERVAL YEAR TO MONTH ve INTERVAL DAY TO SECOND sütun türlerini kullanarak

Detaylı

RPM Hazırlama Sanatı

RPM Hazırlama Sanatı RPM Hazırlama Sanatı Devrim GÜNDÜZ Principal Systems Engineer @ EnterpriseDB Twitter: @DevrimGunduz Red Hat Certified Engineer Kişisel: devrim@gunduz.org İş: devrim.gunduz@enterprisedb.com ...bu anlatan

Detaylı

08221 Veri Tabanı II. Elbistan Meslek Yüksek Okulu 2015 2016 GÜZ Yarıyılı. 20-23 Eki. 2015. Öğr. Gör. Murat KEÇECĠOĞLU

08221 Veri Tabanı II. Elbistan Meslek Yüksek Okulu 2015 2016 GÜZ Yarıyılı. 20-23 Eki. 2015. Öğr. Gör. Murat KEÇECĠOĞLU 08221 Veri Tabanı II Elbistan Meslek Yüksek Okulu 2015 2016 GÜZ Yarıyılı 20-23 Eki. 2015 Öğr. Gör. Murat KEÇECĠOĞLU T-SQL KOMUTLARI Veritabanları ANSI SQL dediğimiz standart dil kullanılmaktadır. Bu dil

Detaylı

3 Sql Veri Tipleri ve Örnek Veritabanı Tasarımı. Veritabanı 1

3 Sql Veri Tipleri ve Örnek Veritabanı Tasarımı. Veritabanı 1 3 Sql Veri Tipleri ve Örnek Veritabanı Tasarımı Veritabanı 1 Ms SQL Server Veri Tipleri Bigint: -9,223,372,036,854,775,808 ile 9,223,372,036,854,775,807 arasındaki sayıları tutar. 8 baytlık yer kaplar.

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ı

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ı

Birden Çok Tabloda Sorgulama (Join)

Birden Çok Tabloda Sorgulama (Join) Birden Çok Tabloda Sorgulama (Join) Join(Birleştirici), iki ya da daha fazla tabloyu aynı anda sorgulayarak bir sonuç tablosu (result table) oluşturmaya yarar. Örneğin: İki tabloyu birleştirici ile birleştirerek

Detaylı

«BM364» Veritabanı Uygulamaları

«BM364» Veritabanı Uygulamaları HAFTA 6 T-SQL ile Programlar Yazmak" Yaşar GÖZÜDELİ ygozudeli@verivizyon.com http://blog.verivizyon.com/ygozudeli «BM364» Veritabanı Uygulamaları Konu Akışı Programlama dili olarak T-SQL Fonksiyonlar Programlamak

Detaylı

KULLANICI TANIMLI FONKSİYONLAR

KULLANICI TANIMLI FONKSİYONLAR KULLANICI TANIMLI FONKSİYONLAR Kullanıcı tanımlı fonksiyonlar SQL2000 ile gelen özelliklerden biridir. Fonksiyonlar tek bir değer veya tablo döndürmek için kullanılır. Fonksiyonları veritabanı programlamada

Detaylı

SQL Sorgulama Dili,Yerel SQL ve Dil Takımı

SQL Sorgulama Dili,Yerel SQL ve Dil Takımı SQL Sorgulama Dili,Yerel SQL ve Dil Takımı SQL Sorgulama Dili adı altında yeni bir makale dizisine başladık "SQL sorgulama dili" adlı makale dizimiz bittikten sonra "Veritabanı Uygulamaları Geliştirmek"

Detaylı

«BM364» Veritabanı Uygulamaları-2

«BM364» Veritabanı Uygulamaları-2 «BM364» Veritabanı Uygulamaları-2 Yaşar GÖZÜDELİ ygozudeli@verivizyon.com http://blog.verivizyon.com/ygozudeli Konu Akışı İlişkisel Veritabanı Temelleri SQL Server Temel Bileşenleri T-SQL Bileşenleri 2

Detaylı

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while Değişkenler Değişkenler bir bilginin bellekteki konumunu temsil eden sembolik isimlerdir. Bilgisayarda hemen hemen tüm işlemler bellekte yapılır. Program çalıştırıldığında değişken ve bu değişkenin türüne

Detaylı

Microsoft SQL Server Sorgulama

Microsoft SQL Server Sorgulama Microsoft SQL Server Sorgulama Eğitim Takvimi Tarih Eğitim Süresi Lokasyon 26 Kasım 2018 3 Gün Bilginç IT Academy Eğitim Detayları Eğitim Süresi : 3 Gün Kontenjan : 12 Ön Koşullar : Herhangi bir ön koşul

Detaylı

PHP'ye Giriş Türkiye PHP Grubu - Linux Şenlikleri PHP Eğitim / Tanıtım Seminerleri Ankara, 11 Mayıs 2006 Hidayet Doğan <hdogan@hido.

PHP'ye Giriş Türkiye PHP Grubu - Linux Şenlikleri PHP Eğitim / Tanıtım Seminerleri Ankara, 11 Mayıs 2006 Hidayet Doğan <hdogan@hido. PHP'ye Giriş Türkiye PHP Grubu - Linux Şenlikleri PHP Eğitim / Tanıtım Seminerleri Ankara, 11 Mayıs 2006 Hidayet Doğan PHP Nedir? Genel kullanım amaçlı bir betik/programlama dilidir.

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ı

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ı

Bir çeşit prosedür. Ancak bu prosedür kendiliğinden çalışır. Çalışması için tabloya veri eklemek, veri silmek, veri değiştirmek yeterlidir.

Bir çeşit prosedür. Ancak bu prosedür kendiliğinden çalışır. Çalışması için tabloya veri eklemek, veri silmek, veri değiştirmek yeterlidir. TRIGGER Bir çeşit prosedür. Ancak bu prosedür kendiliğinden çalışır. Çalışması için tabloya veri eklemek, veri silmek, veri değiştirmek yeterlidir. Herhangi bir tablo üzerinde yapılan, insert, update veya

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ı

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ı

UTL_FILE PERFORMANSI

UTL_FILE PERFORMANSI UTL_FILE PERFORMANSI 1 İçindekiler 0.ÇALIŞMADA KULLANILMAK ÜZERE DATA OLUŞTURMA... 4 1. HERHANGİ BİR İYİLEŞTİRME YAPMADAN STANDART UTL_FILE KULLANIMI... 5 2. I/O MİKTARINI AZALTMAK İÇİN VARCHAR ARA DEĞİŞKEN

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ı

3 Sql Veri Tipleri. Veritabanı 1

3 Sql Veri Tipleri. Veritabanı 1 3 Sql Veri Tipleri Veritabanı 1 Bigint: -9,223,372,036,854,775,808 ile 9,223,372,036,854,775,807 arasındaki sayıları tutar. 8 baytlık yer kaplar. Int: -2,147,483,648 ile 2,147,483,648 arasındaki sayıları

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ı

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı Öğr. Gör. Cansu AYVAZ GÜVEN NESNE TABANLI PROGRAMLAMA Java Değişkenler ve Veri Tipleri Operatörler JAVA Java Java SUN bilgisayar şirketince

Detaylı

SQL FONKSİYONLARI SQL lisanında hesaplama ve sayma işlemlerinde kullanılmak üzere bir çok fonksiyon vardır.

SQL FONKSİYONLARI SQL lisanında hesaplama ve sayma işlemlerinde kullanılmak üzere bir çok fonksiyon vardır. SQL FONKSİYONLARI SQL lisanında hesaplama ve sayma işlemlerinde kullanılmak üzere bir çok fonksiyon vardır. Yapı SQL içinde tanımlı bir fonksiyonu kullanmak için genel yapı Fonksiyon_adı(Fonksiyonun argümanları)

Detaylı

Veri Tabanı Tasarım ve Yönetimi

Veri Tabanı Tasarım ve Yönetimi SAKARYA ÜNİVERSİTESİ Veri Tabanı Tasarım ve Yönetimi Hafta 5 Prof. Dr. Ümit KOCABIÇAK Bu ders içeriğinin basım, yayım ve satış hakları Sakarya Üniversitesi ne aittir. "Uzaktan Öğretim" tekniğine uygun

Detaylı

SQL PROGRAMLAMA. Bir batch, bir arada bulunan bir dizi SQL deyimidir. Batch ayıracı GO deyimidir.

SQL PROGRAMLAMA. Bir batch, bir arada bulunan bir dizi SQL deyimidir. Batch ayıracı GO deyimidir. SQL PROGRAMLAMA BATCH Bir batch, bir arada bulunan bir dizi SQL deyimidir. Batch ayıracı deyimidir. SELECT. UPDATE...... DELETE.. BATCH BATCH Özellikleri 1- Bir batch içinde bir deyimde yazım hatası olduğunda

Detaylı

PostgreSQL Veritabanı Sunucusu. Başarım Arttırma Yöntemleri

PostgreSQL Veritabanı Sunucusu. Başarım Arttırma Yöntemleri PostgreSQL Veritabanı Sunucusu Başarım Arttırma Yöntemleri Devrim GÜNDÜZ PostgreSQL Geliştiricisi Command Prompt, Inc. devrim@commandprompt.com devrim@postgresql.org[.tr] LKD Seminerleri Linux Kullanıcıları

Detaylı

Öğr. Gör. Serkan AKSU http://www.serkanaksu.net. http://www.serkanaksu.net/ 1

Öğr. Gör. Serkan AKSU http://www.serkanaksu.net. http://www.serkanaksu.net/ 1 Öğr. Gör. Serkan AKSU http://www.serkanaksu.net http://www.serkanaksu.net/ 1 JavaScript JavaScript Nedir? Nestcape firması tarafından C dilinden esinlenerek yazılmış, Netscape Navigator 2.0 ile birlikte

Detaylı

Veritabanı. SQL (Structured Query Language)

Veritabanı. SQL (Structured Query Language) Veritabanı SQL (Structured Query Language) SQL (Structured Query Language) SQL, ilişkisel veritabanlarındaki bilgileri sorgulamak için kullanılan dildir. SQL, bütün kullanıcıların ve uygulamaların veritabanına

Detaylı

Postgresql: Web Programcısı için Gündelik İpuçları Postgres 2014 Türkiye

Postgresql: Web Programcısı için Gündelik İpuçları Postgres 2014 Türkiye Postgresql: Web Programcısı için Gündelik İpuçları Postgres 2014 Türkiye Üstün Özgür December 6, 2014 Outline Giriş Web uygulama çatıları (frameworkler) MVC Java Spring + Hibernate, Python Django, Ruby

Detaylı

Charindex() CHARINDEX

Charindex() CHARINDEX Charindex() CHARINDEX fonksiyonu 2 parametre almaktadır. 1.parametredeki değerin 2.parametre olarak verilmiş değerde olup olmadığını belirtir. Varsa karakter numarasını yoksa 0 değerini döndürür. SELECT

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ı

NoSql ve MongoDB. Saygın Topatan

NoSql ve MongoDB. Saygın Topatan NoSql ve MongoDB Saygın Topatan NoSql ve MongoDB NoSql nedir Neden ihtiyaç duyuldu Tipleri MongoDb Kavramlar Sharding Şema Tasarımı NoSql in geleceği NoSql Nedir? Nedir 2009 başlarında ortaya çıkmış bir

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ı

VERİ TABANI YÖNETİM SİSTEMLERİ II. 4. SQL PROGRAMLAMADA PROCEDURE ve FUNCTION

VERİ TABANI YÖNETİM SİSTEMLERİ II. 4. SQL PROGRAMLAMADA PROCEDURE ve FUNCTION BÖLÜM 4 4. SQL PROGRAMLAMADA PROCEDURE ve FUNCTION 4.1 PROCEDURE (PROSEDÜR) VE ÖZELLİKLERİ? Prosedürler belirli işlemleri gerçekleştirmek üzere oluşturulan özel bloklardır. PL/SQL de prosedürler diğer

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ı

Aşağıdaki tabloyu inceleyin. Sorgulama işlemlerini bu tabloya göre yapacağız.

Aşağıdaki tabloyu inceleyin. Sorgulama işlemlerini bu tabloya göre yapacağız. Bu Derste Öğrenecekleriniz: 1- Basit Sorgulamalar a. Tablodan tüm alanları sorgulama b. Tablodan alanları belirterek sorgulama c. Tekrarlı satırları önleme d. Belirli sayıda veya oranda sorgulama yapma

Detaylı