Sayfayı Yazdır | Pencereyi Kapat

SQL Server

Nereden Yazdırıldığı: Clomosy | Forum
Kategori: Genel Programlama
Forum Adı: Genel İşlemler
Forum Tanımlaması: TRObject dili ile programlama yaparken karşılaşılan genel işlemler
URL: https://forum.clomosy.com.tr/forum_posts.asp?TID=768
Tarih: 08 Ocak 2025 Saat 00:08
Program Versiyonu: Web Wiz Forums 12.07 - https://www.webwizforums.com


Konu: SQL Server
Mesajı Yazan: rabiagnbs
Konu: SQL Server
Mesaj Tarihi: 30 Temmuz 2024 Saat 14:26
buradaki hata nedir verileri geçersiz sayıyor. Bir de date kısmı tabloda tarih veri tipi olarak kayıtlı burada text dışında belirleyeceğim şekli var mı : void InsertToDatabase;
{
  try
    Clomosy.DBSQLServerQuery.Sql.Text = 'INSERT INTO Users (users_name, users_surname, users_username, users_password, users_email,
    users_age, users_dateOfBirth) VALUES ('+nameKayit.Text+', '+surNameKayit.Text+',  '+userNameKayit.Text+',
    '+PasswordKayit.Text+', '+emailKayit.Text+', '+QuotedStr(Yas.Text)+', '+dogumTarihi.Text+')';
    Clomosy.DBSQLServerQuery.ExecSql;
  except
    ShowMessage('Exception class: '+LastExceptionClassName+' Exception Message: ' +LastExceptionMessage);
  }
}


-------------
RabiaGnbs



Cevaplar:
Mesajı Yazan: OlgunAgac
Mesaj Tarihi: 30 Temmuz 2024 Saat 14:35
Yas.Text alırken QuotedStr kullanmışsın. Eğer bir edit nesnesinden çekiyorsan .Text zaten string değeri döndürür.

TclDateTime diye bir nesne var.
var 
 gecerliTarih:TclDateTime; 

{
gecerliTarih = Date; // gecerliTarih, şu anki tarihi içerir (saat bilgisi olmadan) ShowMessage(gecerliTarih);
}


-------------
Dünden bugüne süren sonu olmayan yolculuk.


Mesajı Yazan: rabiagnbs
Mesaj Tarihi: 30 Temmuz 2024 Saat 14:40
doğum tarihini zaten bu şekilde tanımlamıştım:  dogumTarihi: TClProDateEdit; ama tablo kısmında da date veri tipinde olduğu için verileri tabloya insert ile kaydederken text yerine ne yazabilirim onu bilemedim. bir de yas kısmı da hem tabloda hem kodda int olarak tanımlı yine onu da text şeklinde alırsam sıkıntı olur mu?

-------------
RabiaGnbs


Mesajı Yazan: OlgunAgac
Mesaj Tarihi: 30 Temmuz 2024 Saat 14:45
SQL tarafında Date bilgisi 2024-07-30 formatında tutuluyor. Eğer aynı formatta ise text olarak query atabilirsin. Ve aynı şekilde Integer verileri string olarak query atabilirsin kabul eder. 

-------------
Dünden bugüne süren sonu olmayan yolculuk.


Mesajı Yazan: rabiagnbs
Mesaj Tarihi: 30 Temmuz 2024 Saat 15:17
syntax hatası almaya devam ediyorum sıkıntı ne olabilir:  Clomosy.DBSQLServerQuery.Sql.Text = 'INSERT INTO Users (users_name, users_surname, users_username, users_password, users_email, users_age, users_dateOfBirth) VALUES ('+nameKayit.Text+', '+surNameKayit.Text+',  '+userNameKayit.Text+', '+PasswordKayit.Text+', '+emailKayit.Text+', '+Yas.Text+', '+dogumTarihi.Text+')';
    Clomosy.DBSQLServerQuery.ExecSql;
  


-------------
RabiaGnbs


Mesajı Yazan: OlgunAgac
Mesaj Tarihi: 30 Temmuz 2024 Saat 15:20
Kodun tamamını atabilir misiniz?

-------------
Dünden bugüne süren sonu olmayan yolculuk.


Mesajı Yazan: rabiagnbs
Mesaj Tarihi: 30 Temmuz 2024 Saat 15:29
Kodun tamamını değil fakat ilgili kısmı gönderiyorum:
 var
   giris, kayitOl: TclForm;
   userName, password, email: TClProEdit;
   kayitOlPanel1, girisPanel1: TclProPanel;
   nameKayit, surNameKayit, userNameKayit, PasswordKayit, emailKayit, Yas: TClProEdit;
   dogumTarihi: TClProDateEdit;
   girisButton, kayitButton, kayitOlButton: TClProButton;
   dogumTarihiLabel: TCLProLabel;
   kayitInsertQuery: TclSqlQuery;
   AnaSayfa: TclUnit;
   seyahatImg: TCLImage;
   
void InsertToDatabase;
{
    Clomosy.DBSQLServerQuery.Sql.Text = 'INSERT INTO Users (users_name, users_surname, users_username, users_password, users_email, users_age, users_dateOfBirth) VALUES ('+nameKayit.Text+', '+surNameKayit.Text+',  '+userNameKayit.Text+', '+PasswordKayit.Text+', '+emailKayit.Text+', '+Yas.Text+', '+dogumTarihi.Text+')';
    Clomosy.DBSQLServerQuery.ExecSql;
}

void KayitOlSayfa;
{
  kayitOl=TclForm.Create(self);
  kayitOl.SetFormBGImage(' https://i.pinimg.com/564x/8c/d9/16/8cd91636fb363780160fede3f9b7717e.jpg" rel="nofollow - https://i.pinimg.com/564x/8c/d9/16/8cd91636fb363780160fede3f9b7717e.jpg ');
  
  kayitOlPanel1=kayitOl.AddNewProPanel(kayitOl,'girisPanel1');
  clComponent.SetupComponent(kayitOlPanel1,
  '{"Align" : "Center",
  "MarginBottom":100,
  "MarginTop":100,
  "Width" :400, 
  "Height":500,
  "RoundHeight":20,
  "RoundWidth":20,
  "BackGroundColor":"#faf0f6"
  }');
  
   nameKayit=kayitOl.AddNewProEdit(kayitOlPanel1, 'nameKayit', 'İsim:');
   clComponent.SetupComponent(nameKayit,'{
   "Align":"Top",
   "Width" :200, 
   "Height":50,
   "TextColor":"#133f87",
   "TextSize":18,
   "TextVerticalAlign":"center",
   "TextHorizontalAlign":"center",
   "TextBold":"yes",
   "BorderColor":"#6f86d1",
   "RoundHeight":10,
   "RoundWidth":10,
   "BorderWidth":2,
   "BackGroundColor":"null"
   }');
   
   surNameKayit=kayitOl.AddNewProEdit(kayitOlPanel1, 'surNameKayit', 'Soyİsim:');
   clComponent.SetupComponent(surNameKayit,'{
   "Align":"Top",
   "Width" :200, 
   "Height":50,
   "TextColor":"#133f87",
   "TextSize":18,
   "TextVerticalAlign":"center",
   "TextHorizontalAlign":"center",
   "TextBold":"yes",
   "BorderColor":"#6f86d1",
   "RoundHeight":10,
   "RoundWidth":10,
   "BorderWidth":2,
   "BackGroundColor":"null"
   }');
  

  userNameKayit=kayitOl.AddNewProEdit(kayitOlPanel1, 'userNameKayit', 'Kullanıcı Adı Belirleyiniz:');
   clComponent.SetupComponent(userNameKayit,'{
   "Align":"Top",
   "Width" :200, 
   "Height":50,
   "TextColor":"#133f87",
   "TextSize":18,
   "TextVerticalAlign":"center",
   "TextHorizontalAlign":"center",
   "TextBold":"yes",
   "BorderColor":"#6f86d1",
   "RoundHeight":10,
   "RoundWidth":10,
   "BorderWidth":2,
   "BackGroundColor":"null"
   }');
   
   PasswordKayit=kayitOl.AddNewProEdit(kayitOlPanel1, 'PasswordKayit', 'Şifre Belirleyiniz:');
   clComponent.SetupComponent(PasswordKayit,'{
   "Align":"Top",
   "Width" :200, 
   "Height":50,
   "TextColor":"#133f87",
   "TextSize":18,
   "TextVerticalAlign":"center",
   "TextHorizontalAlign":"center",
   "TextBold":"yes",
   "BorderColor":"#6f86d1",
   "RoundHeight":10,
   "RoundWidth":10,
   "BorderWidth":2,
   "BackGroundColor":"null",
   "Password":"False"
   }');
   PasswordKayit.Password = True;

   emailKayit=kayitOl.AddNewProEdit(kayitOlPanel1, 'emailKayit', 'Email Belirleyiniz:');
   clComponent.SetupComponent(emailKayit,'{
   "Align":"Top",
   "Width" :200, 
   "Height":50,
   "TextColor":"#133f87",
   "TextSize":18,
   "TextVerticalAlign":"center",
   "TextHorizontalAlign":"center",
   "TextBold":"yes",
   "BorderColor":"#6f86d1",
   "RoundHeight":10,
   "RoundWidth":10,
   "BorderWidth":2,
   "BackGroundColor":"null"
   }');
   
   Yas=kayitOl.AddNewProEdit(kayitOlPanel1, 'Yas', 'Yaş Bilgisi:');
   clComponent.SetupComponent(Yas,'{
   "Align":"Top",
   "Width" :200, 
   "Height":50,
   "TextColor":"#133f87",
   "TextSize":18,
   "TextVerticalAlign":"center",
   "TextHorizontalAlign":"center",
   "TextBold":"yes",
   "BorderColor":"#6f86d1",
   "RoundHeight":10,
   "RoundWidth":10,
   "BorderWidth":2,
   "BackGroundColor":"null"
   }');
   Yas.clTypeOfField = taFloat; 
   
   
  dogumTarihiLabel=kayitOl.AddNewProLabel(kayitOlPanel1, 'dogumTarihiLabel', 'Doğum Tarihi:');
   clComponent.SetupComponent(dogumTarihiLabel,'{
   "Width" :150, 
   "Height":40,
   "TextColor":"#133f87",
   "TextSize":18,
   "TextVerticalAlign":"center",
   "TextHorizontalAlign":"center",
   "TextBold":"yes",
   "BorderColor":"#6f86d1",
   "RoundHeight":10,
   "RoundWidth":10,
   "BorderWidth":2,
   "BackGroundColor":"null",
   "MarginLeft":50,
   "MarginRight":200
   }');
  
  
  dogumTarihi = kayitOl.AddNewProDateEdit(kayitOlPanel1,'dogumTarihi');
  clComponent.SetupComponent(dogumTarihi,'{
  "Width" :150, 
  "Height":40,
  "RoundHeight":10,
  "TextColor": "#133f87",
  "RoundWidth":10,
  "BorderColor":"#6f86d1",
  "BorderWidth":2,
  "BackgroundColor":"null",
  "TextSize" : 18,
  "TextVerticalAlign" : "Center",
  "TextHorizontalAlign" : "Center",
  "MarginLeft":200,
  "MarginRight":50
  }');
   
   kayitOlButton=kayitOl.AddNewProButton(kayitOlPanel1, 'kayitOlButton', 'Kayıt Ol');
   clComponent.SetupComponent(kayitOlButton,'{
   "Align":"Bottom",
   "TextColor":"#526fcc",
   "TextWidth":400,
   "TextHeight":200,
   "TextSize":17,
   "Width" :200, 
   "Height":50,
   "RoundHeight":2,
   "RoundWidth":2,
   "BorderColor":"#617bcf",
   "BorderWidth":2,
   "TextBold":"yes",
   "BackGroundColor":"null"
   }');
   
      
  kayitInsertQuery = TclSqlQuery.Create(nil);
  Clomosy.DBSQLServerConnect('SQL Server', 'myserver9363.database.windows.net', 'azureuser', 'SES1234sizlik', 'yeniSeyahat', 1433);
  kayitInsertQuery.Connection = Clomosy.DBSQLServerConnection;
   
   kayitOl.AddNewEvent(kayitOlButton,tbeOnClick,'InsertToDatabase');
   
   kayitOl.Run;
}



-------------
RabiaGnbs


Mesajı Yazan: OlgunAgac
Mesaj Tarihi: 30 Temmuz 2024 Saat 15:59
İki adet sorun buldum. Bunlardan birincisi SQL Sorgusu atarken her türlü QuotedStr kullanmak gerekiyor. Diğer bir hata ise yukarıda belirttiğim gibi sql Date değeri sadece YYYY-MM-DD formatı kabul eder. Yani 2024-02-24 gibi fakat ProDateEdit 24.02.2024 şeklinde vermekte. Kodu düzeltip aşağıya atacağım.

-------------
Dünden bugüne süren sonu olmayan yolculuk.


Mesajı Yazan: OlgunAgac
Mesaj Tarihi: 30 Temmuz 2024 Saat 16:20
var
kayitOl: TclForm;
userName, password, email: TClProEdit;
kayitOlPanel1, girisPanel1: TclProPanel;
nameKayit, surNameKayit, userNameKayit, PasswordKayit, emailKayit, Yas: TClProEdit;
dogumTarihi: TClProDateEdit;
girisButton, kayitButton, kayitOlButton: TClProButton;
dogumTarihiLabel: TCLProLabel;
kayitInsertQuery: TclSqlQuery;
AnaSayfa: TclUnit;
seyahatImg: TCLImage;
gun,ay,yil, dogruTarih: TclString;
sayac: TclInteger;
   
void InsertToDatabase;
{

  Clomosy.DBSQLServerQuery.Sql.Text = 'INSERT INTO Users (users_name, users_surname, users_username, users_password, users_email, users_age, users_dateOfBirth) VALUES (' + QuotedStr(nameKayit.Text) + ', ' + QuotedStr(surNameKayit.Text) + ',  ' + QuotedStr(userNameKayit.Text) + ', ' + QuotedStr(PasswordKayit.Text) + ', ' + QuotedStr(emailKayit.Text) + ', ' + QuotedStr(Yas.Text) + ', ' + QuotedStr(dogruTarih) + ')';
  Clomosy.DBSQLServerQuery.ExecSql;
}

{
  kayitOl=TclForm.Create(self);
  kayitOl.SetFormBGImage(' https://i.pinimg.com/564x/8c/d9/16/8cd91636fb363780160fede3f9b7717e.jpg" rel="nofollow - https://i.pinimg.com/564x/8c/d9/16/8cd91636fb363780160fede3f9b7717e.jpg ');
  
  kayitOlPanel1=kayitOl.AddNewProPanel(kayitOl,'girisPanel1');
  clComponent.SetupComponent(kayitOlPanel1,
  '{"Align" : "Center",
  "MarginBottom":100,
  "MarginTop":100,
  "Width" :400, 
  "Height":500,
  "RoundHeight":20,
  "RoundWidth":20,
  "BackGroundColor":"#faf0f6"
  }');
  
  nameKayit=kayitOl.AddNewProEdit(kayitOlPanel1, 'nameKayit', 'İsim:');
  clComponent.SetupComponent(nameKayit,'{
  "Align":"Top",
  "Width" :200, 
  "Height":50,
  "TextColor":"#133f87",
  "TextSize":18,
  "TextVerticalAlign":"center",
  "TextHorizontalAlign":"center",
  "TextBold":"yes",
  "BorderColor":"#6f86d1",
  "RoundHeight":10,
  "RoundWidth":10,
  "BorderWidth":2,
  "BackGroundColor":"null"
  }');
   
  surNameKayit=kayitOl.AddNewProEdit(kayitOlPanel1, 'surNameKayit', 'Soyİsim:');
  clComponent.SetupComponent(surNameKayit,'{
  "Align":"Top",
  "Width" :200, 
  "Height":50,
  "TextColor":"#133f87",
  "TextSize":18,
  "TextVerticalAlign":"center",
  "TextHorizontalAlign":"center",
  "TextBold":"yes",
  "BorderColor":"#6f86d1",
  "RoundHeight":10,
  "RoundWidth":10,
  "BorderWidth":2,
  "BackGroundColor":"null"
  }');
  

  userNameKayit=kayitOl.AddNewProEdit(kayitOlPanel1, 'userNameKayit', 'Kullanıcı Adı Belirleyiniz:');
  clComponent.SetupComponent(userNameKayit,'{
  "Align":"Top",
  "Width" :200, 
  "Height":50,
  "TextColor":"#133f87",
  "TextSize":18,
  "TextVerticalAlign":"center",
  "TextHorizontalAlign":"center",
  "TextBold":"yes",
  "BorderColor":"#6f86d1",
  "RoundHeight":10,
  "RoundWidth":10,
  "BorderWidth":2,
  "BackGroundColor":"null"
  }');
   
  PasswordKayit=kayitOl.AddNewProEdit(kayitOlPanel1, 'PasswordKayit', 'Şifre Belirleyiniz:');
  clComponent.SetupComponent(PasswordKayit,'{
  "Align":"Top",
  "Width" :200, 
  "Height":50,
  "TextColor":"#133f87",
  "TextSize":18,
  "TextVerticalAlign":"center",
  "TextHorizontalAlign":"center",
  "TextBold":"yes",
  "BorderColor":"#6f86d1",
  "RoundHeight":10,
  "RoundWidth":10,
  "BorderWidth":2,
  "BackGroundColor":"null",
  "Password":"False"
  }');
  PasswordKayit.Password = True;
  
  emailKayit=kayitOl.AddNewProEdit(kayitOlPanel1, 'emailKayit', 'Email Belirleyiniz:');
  clComponent.SetupComponent(emailKayit,'{
  "Align":"Top",
  "Width" :200, 
  "Height":50,
  "TextColor":"#133f87",
  "TextSize":18,
  "TextVerticalAlign":"center",
  "TextHorizontalAlign":"center",
  "TextBold":"yes",
  "BorderColor":"#6f86d1",
  "RoundHeight":10,
  "RoundWidth":10,
  "BorderWidth":2,
  "BackGroundColor":"null"
  }');
   
  Yas=kayitOl.AddNewProEdit(kayitOlPanel1, 'Yas', 'Yaş Bilgisi:');
  clComponent.SetupComponent(Yas,'{
  "Align":"Top",
  "Width" :200, 
  "Height":50,
  "TextColor":"#133f87",
  "TextSize":18,
  "TextVerticalAlign":"center",
  "TextHorizontalAlign":"center",
  "TextBold":"yes",
  "BorderColor":"#6f86d1",
  "RoundHeight":10,
  "RoundWidth":10,
  "BorderWidth":2,
  "BackGroundColor":"null"
  }');
  Yas.clTypeOfField = taFloat; 
   
   
  dogumTarihiLabel=kayitOl.AddNewProLabel(kayitOlPanel1, 'dogumTarihiLabel', 'Doğum Tarihi:');
  clComponent.SetupComponent(dogumTarihiLabel,'{
  "Width" :150, 
  "Height":40,
  "TextColor":"#133f87",
  "TextSize":18,
  "TextVerticalAlign":"center",
  "TextHorizontalAlign":"center",
  "TextBold":"yes",
  "BorderColor":"#6f86d1",
  "RoundHeight":10,
  "RoundWidth":10,
  "BorderWidth":2,
  "BackGroundColor":"null",
  "MarginLeft":50,
  "MarginRight":200
  }');
  
  
  dogumTarihi = kayitOl.AddNewProDateEdit(kayitOlPanel1,'dogumTarihi');
  clComponent.SetupComponent(dogumTarihi,'{
  "Width" :150, 
  "Height":40,
  "RoundHeight":10,
  "TextColor": "#133f87",
  "RoundWidth":10,
  "BorderColor":"#6f86d1",
  "BorderWidth":2,
  "BackgroundColor":"null",
  "TextSize" : 18,
  "TextVerticalAlign" : "Center",
  "TextHorizontalAlign" : "Center",
  "MarginLeft":200,
  "MarginRight":50
  }');
   
  kayitOlButton=kayitOl.AddNewProButton(kayitOlPanel1, 'kayitOlButton', 'Kayıt Ol');
  clComponent.SetupComponent(kayitOlButton,'{
  "Align":"Bottom",
  "TextColor":"#526fcc",
  "TextWidth":400,
  "TextHeight":200,
  "TextSize":17,
  "Width" :200, 
  "Height":50,
  "RoundHeight":2,
  "RoundWidth":2,
  "BorderColor":"#617bcf",
  "BorderWidth":2,
  "TextBold":"yes",
  "BackGroundColor":"null"
  }');
   
  kayitInsertQuery = TclSqlQuery.Create(nil);
  Clomosy.DBSQLServerConnect('SQL Server', 'myserver9363.database.windows.net', 'azureuser', 'SES1234sizlik', 'yeniSeyahat', 1433);
  kayitInsertQuery.Connection = Clomosy.DBSQLServerConnection;
   
  kayitOl.AddNewEvent(kayitOlButton,tbeOnClick,'InsertToDatabase');
  
  gun = clGetStringTo(dogumTarihi.Date,'.');
  yil = clGetStringAfter(dogumTarihi.Date, '.');
  ay = clGetStringTo(yil, '.');
  yil = clGetStringAfter(yil, '.');
  
  dogruTarih = yil + '-' + ay + '-' + gun;
  
  kayitOl.Run;
}


-------------
Dünden bugüne süren sonu olmayan yolculuk.


Mesajı Yazan: OlgunAgac
Mesaj Tarihi: 30 Temmuz 2024 Saat 16:21
Yukarıda sorguyu QuotedStr ile doğru hale getirdim ve tarih formatını da doğru hale getirdim. Databasenizi kontrol edin.

-------------
Dünden bugüne süren sonu olmayan yolculuk.



Sayfayı Yazdır | Pencereyi Kapat

Forum Software by Web Wiz Forums® version 12.07 - https://www.webwizforums.com
Copyright ©2001-2024 Web Wiz Ltd. - https://www.webwiz.net