12 Aralık 2016 Pazartesi

PHP İsset Kullanımı (isset Komutu)

Cookie tanımlanmış mı diye bakalım

Tüm degişkenlerin varlıgını kontrol edecek olan isset() fonksiyonu ile bir çerezin tanımlanıp tanımlanmadıgını bulabiliriz. Kullanımı

<?php

setcookie("çerezim","selam dünya", time() + (60*60*24));
$_COOKIE['çerezim'];

//setcookie("çerezim","selam dünya", time()  -3600));

if (isset(Ş_COOKIE['çerezim'])) {
echo "çerez var";
}
else{
echo "çerez yoktur";
}

 ?>

PHP Cookie Degerini Değiştirmek


Çerezleri oluşturmak ve silmekte oldugu gibi degerini degiştimekte de setcookie() fonksiyonunu kullanıyoruz.
Ve oluşturmakta oldugu gibi degerini değiştirmektede aynıdır. Sadece çerez adına önceden tanımladıgımız adı
yazmamız yeterli. Eger çerez yoksa oluşturulur varsa degeri değiştirilir.

1 setcookie("çerezim", "selam dünya");

2 setcookie("çerezim","merhaba dünya");

3

4 echo $_COOKIE['çerezim'];

Ekranda merhaba dünya yazar.

PHP Cookie Kullanımı

Cookie Kullanımı
Çerez kullanımı $_COOKIE dizisi üzerinden ypaılır. Bu dizi otomatik olarak o sayfaya gönderilen çerezlere göre oluşur.
Yukarıdaki oluşturdugumuz çereze ulaşmak için aşagıdaki kodu kullanırızç ki bu koddan ne kadar basit anlaşılır oldugu belli oluyor.

ekrana yazdırdık..

echo$_COOKIE['çerezim'];

PHP Cookie Silme (Çerezleri Silme)

Cookie Silme

Oluşturdugumuz bir çerezi silmek için yine normal bir çerez tanımlarmış gibi setcookie() fonksiyonunu
kullanıyoruz tek fark3. son kullanmaa tarihi parantezimize geçmi bir zaman giriyoruz. Bu sayede çerezin tarihi
dolmuş varsayılıp hemen siliniyor. Örnek olarak bu çereze time()-3600 diyerek 1 saat öncesini gösterecegiz ve
+çerez silinmiş olacak:

setcookie("çerezim","selam dünya", time()  -3600));

PHP Cookie Oluşturma (Çerezler)

  PHP Cookie (Çerezler)

Girilen sitelerin tarayıcılar (browserlar) üzerinde bıraktıgığı izlere cookie, Türkçesiylede çerez denir. BU izler siteye
tekrar ziyaret edilgdiginde yeniden gönderilerek bazı şeylerin yeniden hatırlanmasını sağlar.
Mesela giriş formlarında kullanıcın şifresini ve kullanıcı adını cookieler sayesinde taryıcıya kaydederek bir
sonraki gelişinde bilgilerini yeniden girmek zorunda kalmadan direkt giriş yapabilir.

Temel olarak kullanıcı bilgilerini hatırlamasında kulllanılan çerezleri hayal gücünüzün el verdiği kadar bir çok
alanda da kullanmak mümkün.

Cookie Oluşturma

PHP'de cookie oluştırma işini bir setcookie() fonksiyonu ile yapıyoruz

<?php

setcookie("çerezim","selam dünya", time() + (60*60*24));
 ?>

27 Kasım 2016 Pazar

ALTER İfadesi,ALTER TABLE,ALTER COLUMN Nedir ? (Örnek Kullanımlar)

ALTER İfadesi

Daha önce olusturulmus veritabanı nesnesinin özelliğini değiştirmek için kullanılır.
Yapılmak istenen değişiklik parametre olarak verilir.Kullanım şekilleri ;


1.    ALTER TABLE tablo ADD sütun_adi özellikleri
Yukarıda verilen kullanım şekli belirtilen tabloya yeni bir sütun eklemek için kullanılır.Tablo olus
tururken kullanılan NOT NULL ve QNIQUE gibi ifadeler aynı şekilde geçerlidir.Ayrıca ADD ifadesinden
sonra sütun adı ve özellikler yerine tablo olsuturmada anlatılan CONSRAINT  ifadeler de kullanılabilir.
Bu durumda belirtilen CONSTRAINT ifadesi tablodan silinecektir.

2.    ALTER TABLE tablo DROP COLUMN sütun adı
Yukarıda verilen kullanım şekli belirtilen tablodaki belirtilen sütunu silmek için kullanılır.
Ayrıca DROP ifadesinden sonra column sütun adı ve özellikleri yerine tablo olusturmada anlatılan
CONSTRAINT ifadeler de kullanılabilir.Bu durumda belirtilen CONSTRAINT ifade tablodan silinecektir.

3.    ALTER TABLE tablo ALTER COLUMN sütun_adi özellikler

Yukarıda verilen kulanım şekli belirtilen tablodaki belirtilen sütunun özelliklerini değiştirmek
için kullanılır.

UYGULAMA:
       Ögrenci tablosuna dogum_tarihi isminde NULL değer içermeyecek ve tarih türünde olacak bir
sütun ekleyelim.

       ALTER TABLE ogrenci    
       ADD dogum_tarihi smalldatetime NOT NULL
      
ÖRNEK KULLANIMLAR:
1)ALTER TABLE ogrenci ADD UNIQUE (ogr_no)
şeklindeki kullanım var olan ögrenci tablosu için ogr_no sütununa UNIQUE özelliği eklenmektedir.
2)ALTER TABLE ogrenci ADD CONSTRAINT uc_de
UNIQUE (ogr_no,ad)
şeklinde kullanılabilir.
3)ALTER TABLE ogrenci ADD PRIMARY KEY (ogr_no)
var olan tablo için PRIMARY KEY ozelliğini ogr_no ya ekledi.
4)ALTER TABLE ogrenci ADD FOREIGN KEY (bolum) REFERENCE bolumler (bolum)
şeklinde kullanılabilir.
5)ALTER TABLE ogrenci ADD CHECK(ogr_no>200)
ogrencinin 200 numaralı ogrencinin ustendeki numaralar değiştirilecektir.


Tablo Olusturma Kullanım Sekilleri ve Uygulamalar

Tablo Olusturma Kullanım Sekilleri ve Uygulamalar

       CREATE TABLE tablo_ismi
(sütun_ismi1 veri tipi)
(sütun ismi2 veri tipi)
Urunler

UYGULAMA
CREATE TABLE ogrenciler(

ogr_no int NOT NULL PRIMARY KEY,
ogr_adi varchar(50),
bolum varchar(25))

CREATE TABLE personel
(
personel_id int NOT NULL AUTO_INCREMENT=1,
soyad varchar(255) NOT NULL,
isim varchar(255),
adres varchar(255),
sehir varchar(255),
UNIQUE (personel_id)
)
      
       IDENTITY(1,1)

ogr_no IDENTITY(1,1) NOT NULL,

       Default değer kullanımı;
CREATE TABLE ogrenciler(
ogr_no int NOT NULL,
ad varchar(10),
sehir nchar(50) DEFAULT 'HATAY'
)

PRİMARY KEY Kullanımı;

PRİMARY KEY CONSTRAINT

CREATE TABLE notlar(
ogr_no int NOT NULL,
ders_kodu varchar(25) NOT NULL,
vize int,
final int,
CONSTRAINT birincilanahtar PRIMARY KEY(ogr_no,ders_kodu)
)

CHECK Kullanımı;

       Tek Koşul için kullanımı;
CREATE TABLE notlar(
ogr_no int NOT NULL,
ders_kodu varchar(25) NOT NULL,
vize int CHECK (vize>=0),
final int CHECK (final>=0),
CONSTRAINT birincilanahtar PRIMARY KEY (ogr_no,ders_kodu)
)

CREATE TABLE notlar(
ogr_no int NOT NULL,
ders_kodu varchar(25) NOT NULL,
vize int,
final int,
CONSTRAINT chkvize CHECK (vize>=0 AND vize<=100)
CONSTRAINT chkfinal CHECK(final>=0 AND final<=100)
)

IN ve LIKE

LIKE '10[0-9]'
IN ('1991','2011')

CREATE TABLE urunler(
urun_kod varchar(25) NOT NULL,
urun_ad varchar(25) NOT NULL,
CONSTRAINT chkod,
       CHECK (urun_kod IN ('1991','2011')
       OR urun_kod LIKE 'A9[0-9][0-9]'     )
      
)

FOREIGN KEY Kullanımı;
Foreign Key olarak belirlenecek sütun,tablo olusturma esnasında belirlenebilir.Foreign Key olarak belir
slenecek sütun diger bir tabloda birincil anahtar olarak belirlenen sütundur ve Foreign Key olarak belir
lenen sütundur ve
Foreign Key olarak belirlenen sütun içerisine girilecek veriler referans olarak kulla
nılan sütunun içerdiği değerleri içermelidir.
Foreign Key belirme işlemi sütun isimlerinin yanında veya CONSRAINT olarak en sonda belirlenebilr.




Örnek

Aşağıda Ogrenci  ve ders tablolarının içerdiği sütunlar verilmiştir.İlk sütunlar tablonun birincil
anahtarlarıdır.

       OGRENCİ(ogr_no,ad,soyad,bolum)

DERS(ders_kodu,ders_adi)
      
Bu iki tablo ile ilişkili olarak olusturulacak NOTLAR tablosunun ogr_no sütunu OGRENCİ tablosunun
birincil anahtar sütunu olan ogr_no ve DERS tablosunun birincil anahtar sütunu ders_kodu ile FOREİGN KEY
olusturulacaktır. NOTLAR tablosunu olusturmak için aşağıda kodlar yazılmıstır:
      
       CREATE TABLE notlar(
       ogr_no int FOREIGN KEY REFERENCES ogrenci(ogr_no)
       ders_kodu varchar(25) FOREIGN KEY REFERENCE       ders(ders_kodu),
       vize int,
       final int)

       UYGULAMA
Bir araç kiralama veritabanı için aşağıdaki tablolar verilmiştir.Bu tabloları olusturmak için gerekli
SQL ifadelerini yazalım.

MUSTERI(mkod,mad,msoyad,madres,mtel)
KIRALAMA(mkod,aracno,tarih,saat,tes_tarihi,tes_saati)
ARAC(arac_no,model,marka,plaka,fiyat)

      

CREATE TABLE musteri(
             mkod int NOT NULL PRİMARY KEY,
             mad varchar(50) NOT NULL,
             msoyad varchar(50) NOT NULL,
             madres varchar(255),
             mtel varchar()      )
       CREATE TABLE arac(
       aracno int NOT NULL PRIMARY KEY,
       model int NOT NULL,
       marka varchar(25),
       plaka varchar(25),
       fiyat varchar(15),
       CONSTRAINT chkmodel,
       CHECK (model LIKE '[1-2][0-9][0-9][0-9]'))
      
       CREATE TABLE kiralama(
       mkod int NOT NULL,
       aracno int NOT NULL,
       tarih varchar(10),
       saat varchar(8),
       tes_tarih varchar(10)
       tes_saat varchar(10)
       CONSTRAINT fk_mkod FOREIGN KEY (mkod)
             REFERENCES musteri (mkod),
       CONSTRAINT fk_aracno FOREIGN KEY(arac_no)
             REFERENCES arac(arac_no)
       CONSTRAINT pkkey PRIMARY KEY (mkod,aracno) )

      



MYSQL SELECT WHERE Nedir, Kullanımı ve Örnekleri

MYSQL SELECT WHERE
SELECT kolon_adi,kolon_adi
FROM tablo_adi WHERE
kolon_adi operator deger;

MYSQL SELECT WHERE
Operatör Açıklama
= eşit
<> Eşit değil
> büyüktür
< küçüktür
>= Büyük eşit
<= Küçük eşit
Between: Belitilen değerler arasında
like: Özel arama
in: Belitilen birden fazla değer için
Şartları bağlamak için or/and kullanılır.
SELECT * FROM Musteriler
WHERE Ulke='Germany'
AND Sehir='Berlin';
SELECT * FROM Musteriler
WHERE Ulke='Germany'

AND (Sehir='Berlin' OR Sehir='München');

MYSQL DELETE,MYSQL SELECT,MYSQL SELECT DISTINCT Kullanımları ve Örnekleri

MYSQL DELETE
DELETE FROM tablo_adi
WHERE kolon=deger;


MYSQL SELECT
SELECT kolon_adi,kolon_adi
FROM tablo_adi;
SELECT * FROM tablo_adi;

MYSQL SELECT DISTINCT
SELECT distinct kolon_adi,kolon_adi
FROM tablo_adi;
SELECT distinct kolon_adi,* FROM tablo_adi;

MYSQL UPDATE Kullanımı

MYSQL UPDATE
UPDATE tablo_adi
SET kolon1=deger1,kolon2=deger2,...

WHERE kolon=deger;

MYSQL INSERT INTO

MYSQL INSERT INTO
INSERT INTO tablo_adi VALUES (deger1,deger2,deger3,...);
INSERT INTO tablo_adi (kolon1,kolon2,kolon3,...)

VALUES (deger1,deger2,deger3,...);

MYSQL ALTER TABLE

MYSQL ALTER TABLE
ALTER TABLE komutu bir tabloda değişiklik yapmak için kullanılır.
ALTER TABLE eskiad RENAME TO yeniad
ALTER TABLE ogrenciler ADD babaismi varchar(50);
ALTER TABLE Uyeler ADD (Yer VARCHAR(50), Yas INT, Uye_ID Counter,
Kayit_Tarihi DATETIME, Profil MEMO);
ALTER TABLE ogrenciler DROP COLUMN kimyanotu ;

ALTER TABLE Uyeler MODIFY Yer VARCHAR(100);

MYSQL DROP INDEX, DROP TABLE, ve DROP DATABASE

MYSQL DROP INDEX, DROP TABLE, ve DROP DATABASE
DROP TABLE tablo_adi

DROP DATABASE database_Adi


TRUNCATE TABLE tablo_adi

MYSQL AUTO INCREMENT ALAN Kullanımı


MYSQL AUTO INCREMENT ALAN
CREATE TABLE Kisiler
(
ID int NOT NULL AUTO_INCREMENT,
Soyad varchar(255) NOT NULL,
Ad varchar(255),
Adres varchar(255),
Sehir varchar(255),
PRIMARY KEY (ID)

)

MYSQL DEFAULT Kullanımı

MYSQL DEFAULT
CREATE TABLE Kisiler
(
K_Id int NOT NULL,
Soyad varchar(255) NOT NULL,
Ad varchar(255),
Adres varchar(255),
Sehir varchar(255) DEFAULT 'İZMİR'
)
CREATE TABLE Siparisler
(
O_Id int NOT NULL,
OrderNo int NOT NULL,
K_Id int,

OrderDate date DEFAULT GETDATE() )

MYSQL CHECK Koşul Kullanımı

MYSQL CHECK
CREATE TABLE Kisiler
(
K_Id int NOT NULL,
Soyad varchar(255) NOT NULL,
Ad varchar(255),
Adres varchar(255),
Sehir varchar(255),
CHECK (K_Id>0)
)
CREATE TABLE Kisiler
(
K_Id int NOT NULL,
Soyad varchar(255) NOT NULL,
Ad varchar(255),
Adres varchar(255),
Sehir varchar(255),
CONSTRAINT kont_Kisi CHECK (K_Id>0 AND Sehir='Eskişehir')

)

MYSQL FOREIGN KEY Kullanımı (Örnek)

MYSQL FOREIGN KEY

CREATE TABLE Siparisler
(
O_Id int NOT NULL,
OrderNo int NOT NULL,
K_Id int,
PRIMARY KEY (O_Id),
FOREIGN KEY (K_Id) REFERENCES Kisis(K_Id)

)

MYSQL PRIMARY KEY(Birincil Anahtar Kullanımı)


CREATE TABLE Kisiler
(
K_Id int NOT NULL,
Soyad varchar(255) NOT NULL,
Ad varchar(255),
Adres varchar(255),
Sehir varchar(255),
PRIMARY KEY (K_Id)// K_Id birincil anahtar olarak seçildi.

)

MYSQL UNIQUE (Örnek) Kullanımı

MYSQL UNIQUE
CREATE TABLE Kisiler
(
K_Id int NOT NULL,
Soyad varchar(255) NOT NULL,
Ad varchar(255),
Adres varchar(255),
Sehir varchar(255),
UNIQUE (K_Id)

)

MYSQL NOT NULL (Örnek)


CREATE TABLE KisilerNotNull
(
K_Id int NOT NULL,
Soyad varchar(255) NOT NULL,
Ad varchar(255),
Adres varchar(255),
Sehir varchar(255)

)

Constraint (Kısıtlayıcılar),NOT NULL,UNIQUE,PRIMARY KEY,FOREIGN KEY,CHECK, DEFAULT

Constraint (Kısıtlayıcı)
Veri üzerindeki mantıksal sınırlamalara kısıtlayıcı adı verilir.
Kısıtlayıcıların genel olması tercih edilen bir durumdur. Kısıtlayıcılar, veri modellerinde bütünlük sağlamak için kullanılır. Kısıtlayıcıların, tabloların tanımlanmasıyla beraber oluşan öğelerdir. Kısıtlayıcılar ile Rule (kural) ve Default’ların (varsayılan) yapabileceği işler yapılabilir. Constraintler tablo oluştururken yani CREATE TABLE komutuyla tanımlanabilir.
Tablo oluşturulmuşsa ALTER TABLE komutuyla bu işlem gerçekleşir. ALTER TABLE komutuyla kullanıldığında sütunlara girilen bilgilerin dikkate alınması gerekir


NOT NULL – Alana boş değer girilemeyeceğini belirtir
UNIQUE – Tekil alan kısıtlayıcı anlamındadır. Birincil anahtar olan ve tablodaki diğer alanlar içinde aynı içeriğe sahip verilerin olmaması için Unique Constraint tanımlanır. T.C.Kimlik Nu. primary key ve Okul Nu. Unique şeklinde bir tanımlama Unique Constraint’e bir örnektir.
PRIMARY KEY - Birincil anahtar kısıtlayıcı anlamındadır. Aynı olmayan değerler girilmesini sağlar. Bu da her kaydın farklı olması demektir. Her tablonun en fazla 1 adet Primary Key Constraint’i olabilir.
FOREIGN KEY - Yabancıl anahtar kısıtlayıcı anlamındadır. Bir tablodaki bir sütuna ait verilerin başka bir tablonun belirli bir sütunundan gelmesini denetler.
CHECK - Kontrol kısıtlayıcı anlamındadır. Belirtilen formata göre verilerin girilmesini sağlar.
Örneğin, T.C.Kimlik Nu. alanına 11 karakterin girilmesi Check Constraint ile sağlanabilir.
DEFAULT - Varsayılan kısıtlayıcı anlamındadır. Tablodaki herhangi bir alan için girilmesi gereken bir değerin atanmasıdır. INSERT komutu için geçerlidir. Örneğin, kişi bilgilerinin alındığı bir

tabloda kişinin uyruğunun girilmesi işleminde varsayılan değer olarak “T.C.” atanabilir.

Mysql Veri Türleri

Text Veri Tipleri
CHAR( ) : Sabit 0 – 255 karakter.(adi char(5)–> diye bir tanımla yapıp bu alana 2 karakterlik
bir veri girsenizde 5 byte alan ayrılır )
VARCHAR( ) : Değişken 0 – 255 karakter.(adi varchar(5)–> diye bir tanımla yapıp bu alana 2
karakterlik bir veri girseniz, 2 byte alan ayrılır )
TINYTEXT : En Fazla 255 karakter.
TEXT : En Fazla 65.535 karakter.

Numeric Veri Tipleri
TINYINT( ) : -128 ,127 yada 0-255 UNSIGNED.
SMALLINT( ) : -32.768 ,32.767 yada 0 “ 65.535 UNSIGNED.
MEDIUMINT( ) : -8.388.608 , 8.388.607 yada 0 “ 16.777.215 UNSIGNED.
INT( ) : -2.147.483.648 , 2.147.483.647 yada 0 “ 4.294.967.295
BIGINT( ) : -9.223.372.036.854.775.808 , 9.223.372.036.854.775.807 yada 0 “
18.446.744.073.709.551.615
FLOAT : KüÇük Noktalı sayı.
DOUBLE( , ) : Büyük Noktalı sayı.
DECIMAL( , ) : DOUBLE tipte string şeklinde saklanır.

Tarih ve Zaman Veri Tipleri:
DATE : YYYY-MM-DD
DATETIME : YYYY-MM-DD HH:MM:SS
TIMESTAMP : YYYYMMDDHHMMSS
TIME : HH:MM:SS

Diğer Veri Tipleri:
ENUM ( ) : Kullanıcı tanımlı liste tipi. Ür; ENUM(“E”,”H”)

SET : Küme Tipi. ENUM benzeri. Aynı anda birden fazla kayıt tutabilir.

Mysql Veritabanı Tablo Oluşturma


Mysql Veritabanı Tablo Oluşturma

CREATE TABLE tablo_adi
(
alan_adi1 veri_tipi(boyut),
alan_adi2 veri_tipi(boyut),
alan_adi3 veri_tipi(boyut),....
);
Örnek :
CREATE TABLE Kisiler
(
KisiID int,
Soyad varchar(255),
Ad varchar(255),
Adres varchar(255),
Sehir varchar(255)

);