{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Sqlite Veritabanı ve Tablo Oluşturma\n", "\n", "Bu konuyla beraber Python ile Sqlite Veritabanı nasıl kullanılır öğrenmeye çalışacağız. Veritabanı konusu çok çok uzun incelenmesi gereken bir konu olduğu için bu bölümde sadece Sqlite veritabanını basit anlamda incelemeye çalışacağız. \n", "\n", "### Veritabanı nedir ? \n", "\n", "Veritabanı uygulamalarımızda , websitelerimizde veya en genel anlamda programlarımızda gerekli olan bilgileri depoladığımız bir yapıdır. Örneğin , Facebook'un kullanıcıları, gönderileri tuttuğu veritabanları gibi. Günümüzde kullanılan bazı veritabanı türleri şunlardır;\n", "\n", " Relational Database (İlişkisel Veritabanları) : Tablolardan oluşur. Mysql, Sqlite vs.\n", " DocumentBased Database (Doküman Veritabanları) : Dokümanlardan oluşur. MongoDb, Azure DocumentDb\n", " //\n", " //\n", " //\n", " \n", "Bizim bu bölümde inceleyeceğimiz veritabanı Sqlite ilişkisel bir veritabanıdır ve bu veritabanı tablolardan oluşur. Her bir tablo veritabanında belli gruplanmış verileri tutar. Örnek bir tablo yapısı şu şekildedir;" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from IPython.display import Image\n", "Image(filename='Tablo.png')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Buradaki tabloda , **İsim,Yazar,Yayınevi,Sayfa Sayısı** gibi özellikler bizim tablomuzun **özellikleridir** ve her bir satırda herhangi bir kitabın özellikleri saklanır. Tabloları tıpkı bir excel dosyası gibi düşünebilirsiniz." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Sqlite Veritabanı\n", "\n", "Bu bölümde göreceğimiz Sqlite veritabanı diğer veritabanları gibi sunucu kurmamızı gerektirmez, yani sunucusuz bir veritabanıdır. Bu anlamda herhangi bir programımızın yanına direk olarak kurulabilir. Peki bu veritabanı üzerinde tablo oluşturma, veri ekleme gibi işlemlerimizi nasıl gerçekleştireceğiz ? İlişkisel veritabanları tablo işlemlerini **SQL(Structured Query Language)** adında bir sorgulama diliyle gerçekleştirir. Ancak bu sorgulama dili çok kapsamlı olduğu için bu bölümde sadece belli başlı sorguları göstermeye çalışacağım.\n", "\n", "Sql dilini incelemek isterseniz şu siteye bakabilirsiniz : https://www.w3schools.com/SQL/deFault.asp\n", "\n", "### Kullanılacak Yazılım\n", "\n", "Sqlite veritabanında işlemler yaptıktan sonra veritabanını incelemek için güzel bir yazılım bulunuyor. Bu derste hep beraber bu yazılımı kullanacağız.\n", "Bu yazılım şuradan kolaylıkla indirip kurabilirsiniz. http://sqlitebrowser.org/\n", "\n", "İsterseniz artık yavaştan bu veritabanını öğrenmeye başlayalım. \n", "\n", "***Not: Buradan sonraki kodları artık bilgisayarımızda görmeye çalışacağız. Ancak burada bunları tekrardan yazacağım. Daha sonra çalışmak için kullanabilirsiniz. Ayrıca kodları paylaşacağımı da tekrar hatırlatmak istiyorum. *** \n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Sqlite Veritabanı Oluşturma\n", "\n", " 1. import sqlite3 - Modülümüzü dahil ediyoruz.\n", " \n", " 2. con = sqlite3.connect(\"kütüphane.db\") - kütüphane.db veritabanını oluşturup bağlanıyoruz.\n", " Eğer öyle bir veritabanı varsa bağlanıyoruz. Bağlantıyı con isimli bir değişkene atıyoruz.\n", " 3. Database üzerinde Sql sorgularını çalıştırmak için cursor bir tane imleç oluşturuyoruz. \n", " \"cursor = con.cursor()\n", " 4. Veritabanı işlemlerinin sonunda con.close() ile bağlantımızı koparıyoruz.\n", "Veritabanına bağlantı işlemini şu şekilde bir kod ile yapabiliriz. Bu işlemleri bilgisayarınızda yapmaya çalışın.\n", "\n", "***Kodları Jupyterde çalıştırırsak bu dizinde de veritabanımız oluşacaktır. Ancak dersimizi bilgisayar üzerinde yapmaya çalışalım*** \n" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": true }, "outputs": [], "source": [ "import sqlite3 # Sqlite'yı dahil ediyoruz\n", "\n", "con = sqlite3.connect(\"kütüphane.db\") # Tabloya bağlanıyoruz.\n", "\n", "cursor = con.cursor() # cursor isimli değişken veritabanı üzerinde işlem yapmak için kullanacağımız imleç olacak.\n", "\n", "\n", "con.close() # Bağlantıyı koparıyoruz." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Kitaplık Tablosu oluşturma\n", "\n", "Veritabanında ***kitaplık*** isimli bir tablo oluşturmak için şu 2 sorgudan birini kullanabiliriz.\n", "\n", "*** CREATE TABLE kitaplık (İsim TEXT, Yazar TEXT, Yayınevi TEXT , Sayfa_Sayısı INT) *** - Bu sorgu kitaplık isimli bir tablo oluşturacak ve bu tablonun özellikleri İsim (TEXT --> String),Yazar(TEXT --> String),Yayınevi (TEXT ---> String), Sayfa_Sayısı(INT --- int) olacak. Ancak bu sorguyu arda arda çalıştırırsak \"Tablo Already Exists\" hatası alacağız.\n", "\n", "*** CREATE TABLE IF NOT EXISTS kitaplık (İsim TEXT, Yazar TEXT, Yayınevi TEXT , Sayfa_Sayısı INT) *** - Bu sorgu tablo yoksa oluşturacak, tablo varsa hata vermeyecektir. Kodlarımız şu şekilde;\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "import sqlite3 # Sqlite'yı dahil ediyoruz\n", "\n", "con = sqlite3.connect(\"kütüphane.db\") # Tabloya bağlanıyoruz.\n", "\n", "cursor = con.cursor() # cursor isimli değişken veritabanı üzerinde işlem yapmak için kullanacağımız imleç olacak.\n", "\n", "def tablo_oluştur():\n", " cursor.execute(\"CREATE TABLE IF NOT EXISTS kitaplık (İsim TEXT, Yazar TEXT, Yayınevi TEXT, Sayfa_Sayısı INT)\") # Sorguyu çalıştırıyoruz.\n", " con.commit() # Sorgunun veritabanı üzerinde geçerli olması için commit işlemi gerekli.\n", "tablo_oluştur()\n", "con.close() # Bağlantıyı koparıyoruz.\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Şu anda veritabanımıza bağlandık ve kitaplık isimli bir tablonun oluştuğunu görebiliriz. Bir sonraki derste tabloya bilgi eklemeyi göreceğiz." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.1" } }, "nbformat": 4, "nbformat_minor": 2 }