MySQL veritabanına veri ekleme işlemi üzerine bir makalede, tek veri ekleme ve CSV dosyasından toplu veri ekleme yöntemleri incelenmektedir Tek veri ekleme için INSERT INTO komutu kullanıldığı belirtilirken, CSV dosyasından veri ekleme işlemi için birçok adım açıklanmaktadır Bu adımlar, CSV dosyasının veritabanına aktarılması, okunan verilerin sütunlara göre düzenlenmesi ve verilerin SQL sorgusuna dönüştürülmesi şeklindedir Ayrıca, doğru veri uyumsuzluğunun önemi vurgulanmıştır Son olarak, PHP ve MySQL ile veri ekleme işlemi yapmanın farklı yöntemleri olan PDO ve MySQLi açıklanmaktadır Bu yöntemlerin kullanımı uygulamanın ihtiyacına göre seçilmelidir

MySQL veritabanına veri eklemek, web uygulamaları geliştirirken en sık kullanılan işlemlerden biridir. Veri ekleme işlemi yapılmadan önce, veritabanı ve tablo oluşturma işlemleri tamamlanmış olmalıdır. Bu makalede, MySQL veritabanına veri ekleme işleminin farklı yöntemleri ele alınacaktır.
İlk yöntem olarak, tek bir veri eklemek için kullanılan INSERT INTO komutu incelenecektir. Bu komut, her bir alana ayrı ayrı değerler eklenmesi için kullanılır. İkinci yöntem ise, CSV dosyasından toplu bir şekilde veri eklemedir. Bu yöntemde, CSV dosyasından veriler okunarak veritabanına yansıtılır.
CSV dosyaları, virgül, noktalı virgül veya tabulator gibi karakterlerle ayrılmış birçok veriyi içerebilir. CSV'den veri okumak için, öncelikle CSV dosyasını veritabanına yansıtmak gereklidir. Bunun için, CSV dosyası okunur ve veriler depolanır. Ardından, okunan veriler, veritabanına INSERT INTO komutu ile eklenebilir. Veri aktarımı sırasında meydana gelebilecek hataların yönetimi de önemlidir. Bu nedenle, hata yönetimi de bu makalede ele alınacaktır.
Son olarak, PHP ve MySQL ile veri ekleme işlemi yapmanın farklı yöntemleri açıklanacaktır. Bunlar PDO ve MySQLi yöntemleri olacaktır. PDO, PHP'nin veritabanına bağlanmak için sunduğu bir arabirimdir. MySQLi, MySQL veritabanı sunucusuna doğrudan bağlanmanızı sağlar. Bu yöntemlerin kullanımı, uygulamanın ihtiyacına göre seçilmelidir.
1. INSERT INTO kullanarak tek bir veri ekleme
Veritabanına tek bir veri eklemek için kullanılabilecek en basit yöntem, INSERT INTO komutunu kullanmaktır.
Bu komut, bir tabloya yeni bir satır eklemek için kullanılır. İçine eklenmesi gereken değerler, VALUES anahtar kelimesi ile birlikte belirtilir.
Örneğin, "musteriler" isimli bir tabloya yeni bir müşteri eklemek istediğimizde şu şekilde bir SQL sorgusu yazabiliriz:
İsim | Soyisim | Adres |
---|---|---|
Ahmet | Kara | İstanbul |
Bu sorgu, "musteriler" tablosuna "Ahmet Kara" isimli yeni bir müşteri ekleyecektir. Bu yöntem, tek bir veri eklemek için oldukça kolay ve hızlı bir yoldur.
Ancak dikkat edilmesi gereken bazı detaylar vardır. Örneğin, sütunların isimleriyle eklenecek değerler birbirine eşleşmeli ve veri türleri doğru olmalıdır. Ayrıca, tablo yapısı değiştiğinde sorgunun güncellenmesi gerekir.
Bu nedenle, INSERT INTO kullanma konusunda deneyimli olmak ve doğru şekilde kullanmak büyük önem taşır.
2. CSV dosyasından toplu veri ekleme
Bir CSV dosyasından toplu veri ekleme işlemi, birden fazla veriyi veritabanına eklemek için kullanışlı bir yöntemdir. Bu işlem için ilk adım, CSV dosyasının işlem için uygun olup olmadığını belirlemektir. Veritabanına eklemek istenen verilerin, CSV dosyasında doğru sütunlarda ve doğru biçimde hazırlandığından emin olmak önemlidir. Veri uyumsuzlukları, verilerin yanlış alanlara eklenmesine ve hatalı veri ekleme işlemlerine neden olabilir.
CSV dosyası, veritabanına eklenecek verilerin yer aldığı bir metin dosyasıdır. CSV dosyasında her satır, bir veri kaydını temsil eder ve her sütun, veri kaydındaki farklı alanları ifade eder. Verileri CSV dosyasından veritabanına eklemek için bazı adımlar izlenir:
- CSV dosyasını veritabanına yansıtmak için gerekli SQL sorgusu oluşturulur
- CSV dosyasındaki veriler okunur ve depolanır
- Okunan veriler veritabanına eklenir
- Veri aktarımı sırasında çıkabilecek hatalar yönetilir
Verileri CSV dosyasından veritabanına aktarmak, işlem hacmi büyük olduğunda oldukça kolaydır ve veri uyumsuzluğunu azaltır. CSV dosyaları diğer veri kaynaklarına dönüştürülebilir, ardından veriler veritabanına aktarılabilir. Birçok özel yazılım, verileri CSV dosyasına dönüştürme seçeneği sunar ve bunlar birçok farklı formatı destekleyebilir.
CSV Dosyası Yapısı |
---|
Birinci alan,Birinci veri İkinci alan,İkinci veri ... |
CSV dosyası yapısı yukarıdaki tabloya benzer olmalıdır. Her sütun, veritabanına eklenen her bir alanı temsil etmelidir. CSV dosyası yapıları, veritabanı yapısına uygun olarak hazırlanmalıdır. Veri ekleme işlemi, verilerin yanlış sütunlara eklenmesine neden olabilecek biçim uyumsuzluklarını en aza indirmek için yapılmalıdır.
2.1 CSV dosyasını veritabanına yansıtmak
Bir CSV dosyasındaki verilerin MySQL veritabanına aktarılması için birkaç adım gereklidir. Bu adımları sırayla inceleyelim.
- Adım 1: CSV dosyasını okumak için PHP ya da başka bir programlama dili kullanılabilir.
- Adım 2: Okunan veriler, bir tablonun sütunlarına göre düzenlenmelidir.
- Adım 3: Veriler, veritabanına eklemek için uygun olan SQL sorgusuna dönüştürülmelidir.
Bu adımları daha detaylı inceleyelim:
Adım 1: CSV dosyasını okumak
CSV dosyasını okumak için sıklıkla PHP programlama dili kullanılır. Fakat başka programlama dilleri de kullanılabilir. Aşağıdaki PHP kodları, bir dosyayı okumak için kullanılabilir.
<?php if (($csv = fopen("data.csv", "r")) !== FALSE) { while (($data = fgetcsv($csv, 1000, ",")) !== FALSE) { $num = count($data); for ($i=0; $i<$num; $i++) { echo $data[$i] . "\n"; } } fclose($csv); } else { // dosya açılamadı } ?>
Bu kodlar, "data.csv" dosyasını okur ve her satırdaki verileri virgüllerle ayırarak diziye aktarır. Veriler daha sonra bir döngü içinde işlenebilir.
Adım 2: Verileri sütunlara göre düzenlemek
CSV dosyasındaki verilerin MySQL veritabanına aktarılabilmesi için, verilerin tabloya uygun şekilde düzenlenmesi gerekir. Örneğin, "ad" sütunu, verilerin "ad" sütununa uygun bir şekilde düzenlenmesi gerekiyor.
ad | soyad | yaş |
---|---|---|
Ahmet | Yılmaz | 25 |
Mehmet | Demir | 30 |
Bu şekilde düzenlenen veriler, daha sonra MySQL sorgusuna dönüştürülebilir.
Adım 3: SQL sorgusunu oluşturmak
Veriler düzenlendiğinde, SQL sorgusu oluşturulabilir. Örneğin, yukarıdaki tablo için aşağıdaki SQL sorgusu kullanılabilir.
INSERT INTO tablo_adi (ad, soyad, yas) VALUES ('Ahmet', 'Yılmaz', 25), ('Mehmet', 'Demir', 30);
Bu sorgu, "tablo_adi" adlı tabloya iki satır ekler.
Verilerin SQL sorgusuna dönüştürülmesi tamamlandığında, sorgu MySQL veritabanına gönderilir ve veriler tabloya eklenir.
2.1.1. CSV dosyasını okuma
CSV dosyasını okumak ve verileri depolamak için öncelikle dosyanın okunması gerekir. Bunun için PHP'de fopen() ve fgetcsv() fonksiyonları kullanılabilir.
fopen() fonksiyonu kullanarak CSV dosyası açılır ve fgetcsv() fonksiyonu kullanarak dosyadan veriler okunur. Bu fonksiyon, dosyadan satır satır okuma yapar ve bir dizi şeklinde verileri döndürür.
Okunan veriler daha sonra bir dizi veya bir değişkende depolanır ve veritabanına aktarım yapmak için kullanılır. Aşağıdaki örnek, "example.csv" dosyasını okuyarak bir diziye verileri depolar:
$file = fopen('example.csv', 'r');$data = array();while (($row = fgetcsv($file, 1000, ",")) !== FALSE) { $data[] = $row;}fclose($file);
Yukarıdaki kod, "example.csv" dosyasını açar ve verileri okur. Burada, fgetcsv() fonksiyonunun ilk parametresi olarak kullanılan $file değişkeni, açılan dosya ile eşleştirilir.
İkinci parametre, CSV dosyasındaki sütunların ayrıldığı karakteri belirler. Yani burada "," (virgül) karakteri kullanılarak sütunlar ayrılmaktadır. Üçüncü parametre, bir satırın en yüksek karakter sayısını belirtir.
CSV verileri başarıyla bir diziye aktarıldıktan sonra, veritabanına eklemek için gereken SQL sorgusu da dizi kullanılarak oluşturulabilir.
2.1.2. Verileri veritabanına eklemek
Öncelikle, CSV dosyasından okunan verilerin depolandığı tablo seçilmelidir. Daha sonra, INSERT INTO komutu kullanılarak verileri veritabanına eklemek mümkündür. Örnek bir sorgu aşağıdaki gibidir:
Örnek Sorgu |
---|
INSERT INTO tabloadi (satir1, satir2, satir3) VALUES (deger1, deger2, deger3) |
Bu sorguda, tabloadi adlı tabloya satir1, satir2 ve satir3 sütunlarına deger1, deger2 ve deger3 değerleri eklenmektedir. Farklı sütun veya değerlerle veri eklemek için sorgudaki alanları değiştirmeniz gerekmektedir.
2.1.3. Hataları yönetmek
Veri aktarımı sırasında, çeşitli hatalar ortaya çıkabilir. Bunlar arasında, verilerin boş bırakılması, tip uyuşmazlıkları veya sınır aşımı gibi hatalar yer alabilir. Bu hataların yönetimi, veritabanına veri ekleme işlemi sırasında oldukça önemlidir.
Verilerin eksiksiz ve hatasız bir şekilde aktarımı için, hata yönetimi işlemleri önceden tanımlanmalıdır. Hata durumlarında, programın kullanımının kesintiye uğramaması ve istenmeyen durumların önüne geçilmesi için gerekli önlemler alınmalıdır.
Bir hata durumunda, hata mesajları veritabanına ve kullanıcılara gösterilmelidir. Hata mesajları, kullanıcılara nasıl düzeltme yapabilecekleri konusunda bilgi sağlamalıdır. Ayrıca, hata mesajları veritabanına kaydedilerek, gerçekleşen hataların kaynağı belirlenebilir ve bu hataların gelecekte tekrar etmesi önlenir.
Hataların yönetimi konusunda, bir diğer önemli konu, güvenlik açıklarıdır. Veritabanına hatalı verilerin eklenmesi, güvenlik açıklarına neden olabilir ve verilerin çalınması gibi ciddi sonuçlar doğurabilir. Bu nedenle, kullanıcı girdilerinin doğru formatta ve uygun veri türlerinde sağlanması için gerekli önlemler alınmalıdır.
Sonuç olarak, veritabanına veri ekleme işlemi sırasında ortaya çıkabilecek hataların yönetimi, programın doğru ve istikrarlı çalışması için oldukça önemlidir. Hata mesajları ve güvenlik önlemleri, veri aktarımının sorunsuz bir şekilde gerçekleşmesine yardımcı olur ve programın kullanıcı dostu bir hale gelmesini sağlar.
2.2. Verileri CSV dosyasından veritabanına aktarmak
CSV dosyası formatı, verilerin veritabanına hızlı ve etkili bir şekilde aktarılmasını sağlar. Bu nedenle, bir CSV dosyasından veri okuyarak veritabanına toplu bir şekilde veri ekleme işlemi sıklıkla tercih edilir.
Bu işlem için öncelikle CSV dosyasını veritabanına yansıtmalısınız. CSV dosyası açıldığında, veriler PHP fgetcsv()
işlevi kullanılarak okunur ve bir diziye yerleştirilir. Veriler daha sonra veritabanına eklemek için hazır hale getirilir.
CSV dosyasından veri aktarma işlemi için aşağıdaki adımlar izlenir:
- CSV dosyasını açarak verileri okuma
- Bir döngü kullanarak her satırı işleme dahil etme
- Her sütundaki verileri veritabanına eklemek için SQL sorgusu oluşturma
- Her sütundaki verileri veritabanına ekleyerek işlemi tamamlama
- Hataları yönetmek için gerekli önlemleri alma
CSV dosyasından veri aktarımı sırasında hatalar çıkabilir. Örneğin, yanlış formatlı veriler, eksik veriler veya benzersiz bir kimlik kullanarak var olan bir satırın üzerine yazma girişimi. Bu nedenle, veri aktarımı sırasında hataların nasıl yönetileceğini bilmek önemlidir. Verileri veritabanına aktarmadan önce, veritabanı tablosundaki sütunların doğru bir şekilde yapılandırıldığından ve CSV dosyasındaki verilerin doğru bir şekilde biçimlendirildiğinden emin olmanız gerekir.
CSV dosyasından veri aktarma işlemi oldukça basittir ve genellikle büyük miktarda veriyi veritabanına toplu olarak eklemek için kullanılır. Doğru şekilde yapılandırıldığında, bu işlem veri yükleme sürecini hızlandırabilir ve veri aktarımı sırasında çıkabilecek olası hataları minimize edebilir.
3. PHP ile veri ekleme işlemi
PHP, web uygulamaları geliştirmek için popüler bir programlama dilidir. MySQL veritabanını kullanarak web uygulamaları oluştururken PHP ile veri eklemek oldukça yaygındır. PHP, MySQL veritabanına veri eklemek için iki yöntem kullanır: PDO ve MySQLi.
PDO, PHP Data Objects kısaltmasıdır ve PHP'de birden fazla veritabanı türüne bağlanmak için kullanılan bir araçtır. PDO'nun özellikleri arasında güvenlik, veritabanı bağlantısı, sunucu veritabanının çeşitliliği ve hata işleme yer alır. PDO kullanarak MySQL veritabanına veri eklemek, başka bir veritabanında veri eklemek kadar kolaydır. Öncelikle, PDO nesnesi oluşturulmalı, ardından veritabanı bağlantısı kurulmalı ve son olarak da veri ekleme işlemi gerçekleştirilmelidir.
MySQLi, MySQL Improved kısaltmasıdır ve MySQL veritabanına bağlanmak ve sorgularını işlemek için kullanılan bir PHP uzantısıdır. MySQLi, MySQL ile birlikte sunulur ve PHP'nin daha eski sürümlerinde kullanılan MYSQL uzantısının yerini almıştır. MySQLi ile veri eklemek oldukça basittir, öncelikle bir bağlantı kurulmalı ve ardından veri ekleme işlemi gerçekleştirilmelidir.
PHP ile veritabanına veri eklerken, kullanıcı girdileri gibi dikkat edilmesi gereken birkaç husus vardır. Örneğin, özel karakterler veya ' karakteri veritabanına eklenirken özel karakterler olarak ele alınmalıdır, aksi takdirde veritabanında veri eklemesi yaparken hatalar oluşabilir. Bu nedenle, veri eklemek için bir form alanına kullanıcıların girdiği verileri işlerken, özel karakterlerin düzgün bir şekilde işlendiğinden emin olmalısınız.
Sonuç olarak, PHP ile MySQL veritabanına veri eklemek oldukça yaygın bir iştir. PDO veya MySQLi kullanarak veri eklemek oldukça basittir, ancak veri güvenliği ve özel karakterler gibi bazı hususlar göz önünde bulundurulmalıdır.
3.1. PDO kullanarak veri ekleme
PDO (PHP Data Object), veritabanı işlemleri için kullanılabilecek bir PHP kütüphanesidir. PDO kullanarak MySQL veritabanına veri eklemek oldukça kolay bir işlem olarak yapılabilir. İlk olarak, PDO yardımıyla bir veritabanı bağlantısı oluşturulması gerekmektedir. Bu işlem, ayrıntılı bir şekilde açıklanacak.
Veritabanına veri eklemek için, öncelikle PDO'nun sağladığı prepare() fonksiyonu kullanılmalıdır. Bu fonksiyon ile veri eklemek için kullanılacak SQL sorgusu hazırlanır ve her bir placeholder "?" ile temsil edilir.
Örneğin, bir "Öğrenciler" tablosuna yeni bir öğrenci eklemek için kullanılacak SQL sorgusu şu şekildedir:
INSERT INTO ogrenciler (isim, soyisim, sınıf) VALUES (?, ?, ?);
Daha sonra, veri eklemek için hazırlanan SQL sorgusuna gönderilen değerler belirlenir. Bu değerler, execute() fonksiyonu aracılığıyla gönderilir.
$ad = "Ali";$soyad = "Yılmaz";$sinif = "12/A";
$stmt->execute([$ad, $soyad, $sinif]);
Son olarak, PDO bağlantısı kapatılmalıdır.
$dbh = null;
Yukarıdaki adımları izleyerek, PDO kullanarak MySQL veritabanına veri eklemenin nasıl yapıldığı hakkında bilgi sahibi olduk. Bu yöntemle, veritabanındaki verileri güncellemek veya silmek de mümkündür.
3.2. MySQLi kullanarak veri ekleme
MySQLi kullanarak veri ekleme işlemi oldukça basittir. MySQLi, MySQL veritabanı sunucusuna erişmek için PHP tarafından kullanılan bir arabirimdir. Veri eklemek için öncelikle PHP scriptinin veri tabanına bağlanması gerekmektedir. Daha sonra, "INSERT INTO" SQL komutu kullanılarak, MySQL veritabanına yeni bir kayıt eklenir.
Aşağıdaki örnek kodda, "user" adlı bir tabloya yeni bir kayıt ekleniyor. Önce, veritabanına bağlanmak için bazı değişkenler tanımlanması gerekiyor:
$servername = "localhost";$username = "username";$password = "password";$dbname = "myDB";
$conn = new mysqli($servername, $username, $password, $dbname);
Eğer bağlantı başarısız olursa, hata mesajı görüntülenir:
if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error);}
Eğer bağlantı başarılı ise, yeni bir kayıt eklemek için "INSERT INTO" komutu kullanılır:
$sql = "INSERT INTO users (firstname, lastname, email) VALUES ('John', 'Doe', 'john@example.com')";
if ($conn->query($sql) === TRUE) { echo "New record created successfully";} else { echo "Error: " . $sql . "
" . $conn->error;}
Yukarıdaki kodda, "users" adlı bir tabloya yeni bir kayıt ekleniyor. Kayıtta üç sütun var: "firstname", "lastname" ve "email". VALUES kelimesinden sonra, tek tırnak içinde veriler belirtilir. Eğer kayıt başarıyla eklenirse, "New record created successfully" şeklinde bir yazı görüntülenir. Eğer bir hata oluşursa, hata mesajı görüntülenir.
MySQLi kullanarak veri ekleme işlemi oldukça basittir. Bağlantı kurulduktan sonra, "INSERT INTO" komutu kullanarak yeni bir kayıt eklemek mümkündür. Örnek kodlar, bu işlemi gerçekleştirmek için iyi bir başlangıç noktası oluşturabilir.