23 Mart 2016 Çarşamba

SQL Sunucuya Bağlanırken Oluşan Hata " A network-related or instance-specific error occurred while establishing a connection to SQL......"

      Merhaba Arkadaşlar bugün size MS SQL Serveri açarken yaşadığım bir sorun çözümü hakkında bilgi vereceğim.Eğer studio yu açarken alttaki mesaj ile karşılaşıyorsanız beni gibi “ne oldu yine buna ama ben bir şey yapmadım ki :( “diyerek korkmayın çünkü çözümü çok basitmiş :).

 Hata mesajımız :
 
"A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating server / Instance Specified) (Microsoft SQL Server)"



Evet arkadaşlar böyle bir hata mesajı ile karşılaştıktan sonra üsteki resimdeki gibi ok tuşuna basıp çıkıyoruz.Daha sonra başlattan arama çubuğuna “çalıştır” yazıp açıyoruz.


Çıkan çalıştır ekranına “services.msc” yazarak tamam a basıyoruz.




Açılan pencereden SQL SERVER ı bulup sağ tuşa tıklayarak özellikleri açıyoruz.



Açılan yeni pencereden başlangıç türünü otomatik yaparak uygula butonuna basıyoruz.Son olarak ta aynı penceredeki başlat butonuna basarak bitiriyoruz.:)


Sonra studiomuza giriş yapabiliriz J

Yazımı okuduğunuz için teşekkürler.Umarım Faydalı olmuştur. J






19 Mart 2016 Cumartesi

Bilgisayar Tamir Takip Sistem


Otomasyon Tanıtım

Otomasyonumuz Javafx kulanılarak Scene  Builder ile tasarım yapılmış olup  ilk açıldığında alttaki  giriş ekranı açılmaktadır. Bu ekran önceden veri  tabanına kayıtlı personellerin kullanıcı adı ve şifresi  ile giriş yapmaktadır .Eğer kullanıcı adı veya şifre hatalı ise giriş başarısız diye bilgi verilmektedir.



Eğer kullanıcı bilgileri doğru ise sisteme giriş yapılmaktadır. Sisteme giriş yaptıktan sonra otomasyonumuzun  alttaki Ana sayfa  ekranı açılmaktadır bu ekranda toplam beş mönü bulunmaktadır  .Müşteri  menüsünde yeni müşteri  ürün kaydı  ve ürün teslimatı ,tamirat menüsünde eklenen ürünlerin tamirat ekleme işlemi, işlemler menüsünde ise  yeni ürün türleri ,şikayet türleri ,tamirat türleri eklenebilmektedir. Ayrıca sisteme giriş yapan personelin yönetici yetkisi var ise personel silme ve ekleme işlemi yapabilmektedir.



Müşteri  menüsündeki yeni kayıt ekle ekranı ile müşteri bilgileri alınarak ürünün türü ve şikayetleri ,ürünün geliş tarihi, ürünün alınacağı tarih ve fiyatı veri tabanında ilgili tablolara eklenmektedir. Türler ve Şikayetler  veri tabanından çekilerek ComboBox  ‘lar da  gösterilmektedir. Ekle butonuna basılarak ürünün şikayetleri hemen alt kısımda bulunan ListView de gösterilmektedir.Kaydet butonu basılarak ürün bilgileri veri tabına kaydedilerek kullanıcıya kaydedilen ürünün teslimat sırasında bulunabilmesi  için ürün kodu ile birlikte  ürün sisteme kaydedildi  bilgi mesajı verilmektedir. Eğer ürün bilgileri daha önce sisteme kaydedilmiş ise “ürün zaten sisteme kayıtlı ”  diye uyarı mesajı verilmektedir.




Müşteri  menüsündeki  teslimat ekranı ile ürün kodu girilerek getir butonuna basıldıktan sonra  veri tabanından kayıtlı ürün varsa ListView de gösterilmektedir. Teslimatı bitir butonuna basıldıktan sonra ürün daha önce  teslim edilmiş ise” Ürün Daha Önce Teslim Edilmiş Görünüyor.”, ürünün  işlemleri bitmedi ise “Ürün Henüz Hazır Değil “ bilgi mesajı verilmektedir. Eğer ürünün işlemleri  tamamlanmış ve  daha önce teslim edilmemiş ise ürün teslimi tamamlanarak kullanıcıya  “Ürün Teslimi Tamamlandı”  bilgi mesajı verilmektedir.


Tamirat menüsündeki  Tamirat Ekle ekranı açılıp kayıtlı ürün seçildiğinde yapılacak işlemler  yapılacaklar ListView de yapılan işlemler ise yapılan işlemler ListView de gösterilmektedir .Tamirat bitir butonu eğer ürün işlemleri tamamlandığında aktif olmaktadır. Aynı  ürün için yapılmamış işlemler eklene bilmektedir eğer yapılan işlem eklenmek istenirse kullanıcıya “tamirat zaten  sisteme kayıtlı.” Bilgi mesajı verilmektedir .Tüm işlemler tamamlandıktan sonra tamiratı bitir butonuna basıldığında eğer tamirat daha önce bitirildi ise kullanıcıya “tamirat daha önce tamamlandı ” uyarı mesajı verilmektedir. Tamirat daha önce bitirilmediyse tamirat bitir işlemi yapılmaktadır ve kullanıcıya “ tamirat İşlemi Tamamlandı ” bilgi mesajı verilmektedir.



İşlemler menüsündeki  Yeni Ürün ekranı  ile yeni ürün kaydı ve işlem süresi alınarak ürün ekle butonu ile veri tabanındaki ilgili tabloya eklenmektedir. Mevcut ürünler ListView  ile de veritabanında kayıtlı ürünler gösterilmektedir. Bu kayıtlar ListView deki  üyeler seçiler ListView in altındaki Ürün sil butonu ile silme işlemi yapılabilmektedir.Her ekleme ve silme işleminden sonra ListView yenilenmektedir.


 
İşlemler menüsündeki Yeni Tamirat ekranı ile veri tabanındaki mevcut tamirat türleri görülebilmekte ve tamirat türü açıklaması ile bilrlikte standart ücret kullanıcıdan alınarak sisteme eklene bilmektedir. ListView in altındaki sil butonu ile veritabanında  bulunup ListView de  gösterilen  türler seçilerek  siline bilmektedir. Her silme ve ekleme sonrasında ListView yenilenerek  veri tabanının güncel hali gösterilmektedir. Eğer aynı tamirat türü eklenmek istenirse ”Tamirat türünüz zaten sistemde kayıtlı”  diye uyarı mesajı verilmektedir.Eğer kayıt işlemi sıkıntısız veri tabanına kaydedildi ise kullanıcıya “Tamirat türünüz  başarıli bir şekilde sisteme kaydedildi.”  Bilgi mesajı verilmektedir.



İşlemler  menüsündeki Yeni Şikayet ekle  ekranı ile veri tabanındaki  mevcut şikayet türleri görülebilmekte ve  şikayet türü açıklaması  kullanıcıdan alınarak sisteme eklene bilmektedir. ListView in altındaki sil butonu ile veritabanında  bulunup ListView de  gösterilen  türler seçiler ek siline bilmektedir. Her silme ve ekleme sonrasında ListView yenilenerek  veri tabanının güncel hali gösterilmektedir.Eğer aynı şikeyet eklenmek istenirse ”Şikayetiniz zaten sistemde kayıtlı”  diye uyarı mesajı verilmektedir.Eğer kayıt işlemi sıkıntısız veri tabanına kaydedildi ise kullanıcıya “Şikayetiniz başarıli bir şekilde sisteme kaydedildi.”  Bilgi mesajı verilmektedir.



İşlemler menüsündeki Yeni Çalışan Ekle ekranı ile kullanıcıdan kullanıcı bilgileri alınarak kayıt işlemi yapılabilmektedir. Eğer aynı kullanıcı sisteme kayıt edilmek istenirse kullanıcıya “Çalışan zaten  sisteme kayıtlı.” uyarı mesajı verilmektedir. Kayıt işlemi ekle butonuna basılarak yapıla bilmektedir eğer  personel sıkıntısız bir şekilde veri tabanına kaydedilir ise kullanıcıya “Çalışan başarıyla sisteme eklendi.” bilgi mesajı verilmektedir .Bu ekranda sisteme eklenecek  personel için yönetici yetkisi verilebilmektedir. Bu yetki sayesinde sisteme giriş yapan personel  çalışan silme ve ekleme özelliğine sahip olmaktadır.



İşlemler menüsünün sonuncusu olan Çalışan Sil ekranı ile veri tabanındaki tüm personeller  ComboBox ile gösterilmektedir. ComboBox da seçilen  personel sil butonu ile veri tabanından silinebilmektedir.


Son olarak projenin ER diaygarı 






Umarım faydalı olmuştur. Yazımı okuduğunuz için teşekkürler:)

Kodlara ulaşmak için github adresim.




Javada Rasgele Belli Bir Sayıya Kadar Birbirinden Farklı Sayı Üretme

Merhaba arkadaşlar bu dersimizde Javada random olarak belli bir sayıya kadar olan sayıları karıştıracağız.Bu bizim işimize nerede yarayacak diye düşünürseniz örneğin android de resimlerin karışık olarak gelmesini istiyoruz ve bizim 500 tane resmimiz var biz bunun karışık gelmesini sağlamak için 1 den 500 e kadar olan sayıları karışık olarak rasgele her sayı 1 kez olacak şekilde sıralıyoruz ve bu sayıları bir dizide tutarak resimleri oluşturduğumuz id dizi içinden çağırabiliriz.Böylece resimler resgele gelmiş olur.

öreneğin :


int index=0;
if(index>500)
index=0;
else
{
relativeLayoutum.setBackgroundResource(resimlerID[RandomSayilar[index]]);
index++
}




Sorusec adında dizi oluşturuyoruz ve boyutunu 20 yapıyoruz. Daha sonra ilk random sayımızı üretekek sayi  değişkenine atıyoruz.Oluşturduğumuz bu sayıyı da random sayıları tutucak Sorusec dizisinin ilk elemanına atıyoruz bunu for döngülerinin dışında yapmamızın sebebi sonradan oluşturulacak  sayıların aynımı değil mi diye karşılaştırılması için bir ilk değere ihtiyacımızın olmasıdır.



public class ras {
public static void main(String arg[]){
int sayi,Sorusec[]=new int[20];

Sorusec[0] = 0;


Burada ise iç içe  iki tane for döngüsü kullanıyoruz.İlk for döngümüzu ikinci  elemandan başlatıyoruz çünkü dizinin ilk elemanı üste atamıştık.Sonra yine random bir sayı üreterek  sayı değişkenimize atıyoruz.



for (int i = 1; i < 20; i++) {
sayi = (int) (Math.random() * 20);

İkinci for dongumuzde ise üretilen random sayıları önceki tüm üretilen sayılarla karşılaştırıyoruz.Eğer üretilen yeni sayı önceki üretilen random sayılara eşitse tekrar bir random sayı üreterek sayi değişkenine atıyoruz taki farklı bir random sayı bulana kadar eğer tüm önceki elemanları dolaşıp aynı sayı bulamazsa en son olarak bu üretilen random sayıyı Sorusec dizimize atıyoruz.



for (int j = 0; j <= i; j++) {
if (Sorusec[j] == sayi) {
sayi = (int) (Math.random() * 20);
j=0; }
}
Sorusec[i] = sayi;
}

Bu alttaki for dongu ile de üretilen birbirinden farklı 20 sayıyı ekran yazdırıyoruz
   
for (int j = 0; j < 20; j++) {
System.out.println(Sorusec[j]+" ");
}

}
}

Tüm kodlar:
public class ras
{

public static void main(String arg[])
{

int sayi,Sorusec[]=new int[20];
Sorusec[0] = 0;
for (int i = 1; i < 20; i++)
{
sayi = (int) (Math.random() * 20);
for (int j = 0; j <= i; j++)
{
if (Sorusec[j] == sayi) {
sayi = (int) (Math.random() * 20);
j=0;
}

}
Sorusec[i] = sayi;
} for (int j = 0; j < 20; j++)
{
System.out.println(Sorusec[j]+" ");
}
}
}
    
Üsteki kodun çıktısı:




Umarım faydalı olmuştur.Yazımı okuduğunuz için teşekkürler:)



Sql Server ile yeni Database Oluşturma ,Tablo Ekleme ve Primary Key

 Arkadaşlar ilk önce MSQL studio yu açıyoruz ve sol taraftaki Object explorer bölümünden Databases kısmına sağ tuşla tıklayarak New Dasabase tıklıyoruz.
























Açılan yeni pencereye bizim oluşturacağımız yeni Database in ismini girerek ok tuşuna basıyoruz.




















Böylece Ders adında yeni Database oluşturmuş olduk.























Şimdi ise Database  ilk tablomuzu oluşturmak için Ders adındaki Dasebasein altındaki Tables kısmına gelerek sağ tuşa tıklayarak  New Table diyoruz.






















Açılan pencerede ilk önce tablomuza yeni isim vermek için hemen sağ taraftaki Properties kısmındaki  alttaki resimdeki kırmızı ile işaretlediğim kısıma tablomuzun adını yazıyoruz.Ben oluşturcağımız tablonun adını "Kullanici" olarak değiştirdim.Daha sonra tablomuza kolanlar eklemek için sarı ile işaretlenmiş yerdeki Column Name kısmına oluşturcağımız yeni kolonun adını ,Data Type kısmına ise kolonda tutacağımız verin türünü yazıyoruz,Allows Null kısmında ise tutacağımz verinin tabloda null değerde bulunup bulunamayacağını seçiyoruz.İlk olarak ben kullanici verilerini tutmak için kullanici adi,şifresi ve Id sini oluşturuyorum.











ID ile oluşturduğum kolon her kullanıcı kaydı sırasında otomatik olarak artması için alt kısımdaki Column Properties kısmından altdaki resimde kırmızı ile işaretli kısmı "yes" olarak değiştiriyorum.











Bunu otomatik olarak artmasını istememizin sebebi kullanıcı kaydı sırasında birdaha kullanıcıya id atamak ile uğraşmamamız için.Mesela bir form düşünelim kullanıcıdan adını ve şifresini girerek  ok butonuna basınca veritabanına kaydediyor eğer biz bunu otomatik artmasını işaretlemeseydik tek tek her kullanıcı için bu id kısmını  kontrol etmemiz ve yazmamız gerekecekti. Bizim bu id kısmını oluşturmamızın sebebi bizdeki TC nosu gibi her kullanıcı için farklı tek bir değer oluşturmak bunun için Bunu Primary Key olarak ayarlamamız gerekiyor. ID kısmına Primary Key olarak değiştirmemiz için ya o kolona sağ tuş ile tıklayarak Set Primary Key seceneğine basıyoruz yada ID kolonunu seçtikten sonra üsteki araç çubuklarındaki anahtar simgesine tıklıyoruz.












Şimdi neden ID kolonu ekledik ve bu ID ye birincil anahtar yani Primary Key özelliği verdik?

Öncelikle bir öğrenci veritabanı olduğunu düşünelim ve bu öğrencilerin adı,soyadı, bölümü, sınıfı bilgilerini tuttuğumuzu varsayalım.Biz  Ahmet Yılmaz adında bir öğrencinin bilgilerini düzenlemek veya kaydını silmek istediğimizde belki Ahmet Yılmaz adında bir sürü öğrenci var. Dolayısıyla isme göre silme işlemi yaptığımızda belkide asıl kaydı silmeyip diğer kayıtları da sileceğiz yada güncelleyeceğiz.İşte bu gibi durumları önlemek için eşsiz olarak tanımlama sağlayan Primary Key kullanıyoruz .Bu yüzden bizim doğru kişiyi silmemiz veya bilgilerini güncellememiz için bir değere Birincil Anahtar özelliğni vermemiz gerekir ve bu anahtarın her öğrenci için farklı olması lazım örneğin okul numarası gibi veya başka bir veritabanları için CalisanID,KitapID,PersonelID,YemekNoıd  gibi.

Son olarakta tablomaza kolonları ekledikten sonra tablomuzu kaydediyoruz(Ctrl+s)  daha sonra tablomuzun gözükmesi için Object Explorer kısmındaki Tables e gelerek sağ tuşla tıklayıp Refresh ediyoruz.






















Umarım yazım faydalı olmuştur.Okuduğunuz için teşekkürler :)


18 Mart 2016 Cuma

Sql Server Authentication "sa" login hatası çözümü


Sql Server 2012 ile Sql Authentication modda oturum açmak istediğimizde aşağıdaki hata bizi karşılamakta.



Bu yüzden biz Windows Autheritication modda oturum açıyoruz.


Soltaraftaki Object explorer bölümünde en üsteki server kısmına sağ tuşa tıklayarak properties bölümünü açıyoruz.




Properties i açtıktan sonra sol taraftaki securityi tıklayıp hemen sağındaki SQL Server and Windows Authentication mode  yi seçip ok butonu ile kaydediyoruz.





Yine soldaki menüden yani Objet explorer içinden security kısmını genişleterek logins kısmını açıyoruz.Burda gördüğünüz gibi “ sa “ kullanıcısı disable görülmekte





“sa”  ya sağ tıklayıp properties is açıyoruz.




Açılan ekranda “sa” kullanıcısına General kısmından bir parola  veriyoruz.





Yine aynı yerden Status sekmesinden Login kısmını Enabled olarak dehiştirip OK  butonuna basıyoruz.


Kaydettikten sonra SQL Serveri yenden başlatmamız gerekiyor bunun için başlat menüsünde arama kısmı çalıştır yazarak çalıştırı açıp “services.msc” yazıyoruz  ve tamama tıklıyoruz.



Açılan yeni ekrandan SQL Serveri i bulup sagtuşla tıklayıp yeniden başlat  a basıyoruz.




Son olarak tekrar studio u açarak  Authentication kısmından Sql Server  Authentication seçip login kısmına “sa” şifre kısmına ise oluşturduğumuz şifre ile giriş yapıyoruz.



Umarım faydalı olmuştur .Okuduğunuz için teşekkürler J


NodeJS-Socket.io Real Time Chat Uygulaması

Bu chat uygulmasını Node js ve socket.io kullanarak gerçekleştirdim.Veri tabanı olarak MySql kullandım.Kişiler Real time olarak birbirleriyl...