Sql Database'inden Bilgi sorgulama

zafer

Super Moderator
Yönetici
Katılım
8 Mart 2005
Mesajlar
3,288
Excel Vers. ve Dili
OFFICE 2003 TÜRKÇE
OFFICE 2010 TÜRKÇE
Merhaba

Sayın Wakkasss ın yardımlarıyla

İnsert into ile tetbox... daki bilgileri database aktarıyorum
update komutu ile de table'deki bilgileri değiştirebiliyorum

stSQL = "insert into deneme1(kod, isim, logic) values ('" + TextBox1.Text + "', '" + TextBox2.Text + "', '" + TextBox3.Text + "')"

stSQL = "UPDATE deneme1 SET isim =" & TextBox2 & "WHERE (logic = 1)"

sorum

Texbox1, textbox2 ve text box3'e
tabledeki kod,isim ve logic sütunlarını nasıl getirebilirim
örneğin logic=1 (textbox3 verisi) yazdığımda textbox1 ve textbox2 ye
logic'i 1 olanları getirmesini istiyorum




Saygılarımla
 
Katılım
8 Temmuz 2004
Mesajlar
254
Excel Vers. ve Dili
office 2007-mssql 2008 R2
selam şunu denermisiniz?
Kod:
Private Sub RFRDB()
Set cnt = New ADODB.Connection
strConn = "PROVIDER=SQLOLEDB;"
strConn = strConn & "DATA SOURCE=192.172.4.211;INITIAL CATALOG=database_ismi;"
strConn = strConn & " INTEGRATED SECURITY=sspi;"
cnt.Open strConn
Set RST = New ADODB.Recordset
With RST
.ActiveConnection = cnt
.Open "SELECT * FROM tablo_ismi where logic='" + textbox3.text + "'"

Textbox1.text=rst(0)
Textbox2.text=rst(1)
Textbox3.text=rst(2)

.Close
End With
cnt.Close
Set RST = Nothing
Set cnt = Nothing
End Sub
Kolay gelsin.
 

zafer

Super Moderator
Yönetici
Katılım
8 Mart 2005
Mesajlar
3,288
Excel Vers. ve Dili
OFFICE 2003 TÜRKÇE
OFFICE 2010 TÜRKÇE
Merhaba

Çok teşekkür ederim, benim için çok faydalı oldu ne zamandar beridir bu konu hakkında bir şeyler yapmak istiyordum.

Sizden bir ricam daha var

logic=1 olanları liste kutusuna alabilirmiyim

Saygılarımla
 
Katılım
8 Temmuz 2004
Mesajlar
254
Excel Vers. ve Dili
office 2007-mssql 2008 R2
Selam,

Kod:
ComboBox1.AddItem RST(2)
bu kodu ilave edin.(Combo box eklemeyi unutmayın:) formunuza)

Kolay gelsin.
 

zafer

Super Moderator
Yönetici
Katılım
8 Mart 2005
Mesajlar
3,288
Excel Vers. ve Dili
OFFICE 2003 TÜRKÇE
OFFICE 2010 TÜRKÇE
Merhaba

Textbox3.text=rst(2) 'nin altına
Kodu ilave ettim
fakat "öğe istenen ad veya sıra sayısı ile ilişkili derleme içinde bulunamıyor diye mesaj alıyorum
 
Katılım
8 Temmuz 2004
Mesajlar
254
Excel Vers. ve Dili
office 2007-mssql 2008 R2
Selam,

ben denedim, bende bir sorun yok. Kodunuza bir baksak mümkün mü?

Kolay gelsin.
 

zafer

Super Moderator
Yönetici
Katılım
8 Mart 2005
Mesajlar
3,288
Excel Vers. ve Dili
OFFICE 2003 TÜRKÇE
OFFICE 2010 TÜRKÇE
Merhaba

Size zahmet oluyor,teşekkür ederim

Private Sub CommandButton2_Click()

Set cnt = New ADODB.Connection
strConn = "PROVIDER=SQLOLEDB;"
strConn = strConn & "DATA SOURCE=192.168.10.75;PWD=KONYA;INITIAL CATALOG=EXCEL_DATA;"
strConn = strConn & " INTEGRATED SECURITY=sspi;"
cnt.Open strConn
Set rst = New ADODB.Recordset
With rst
.ActiveConnection = cnt
'.Open "SELECT * FROM deneme1 where logic='" + TextBox3.Text + "'"
.Open "SELECT * FROM deneme1 where logic=" & TextBox3.Text & ""

TextBox1.Text = rst(0)
TextBox2.Text = rst(1)
'TextBox3.Text = rst(2)
ComboBox1.AddItem rst(3)


.Close
End With
cnt.Close
Set rst = Nothing
Set cnt = Nothing
End Sub

Saygılarımla
 

Barons

Altın Üye
Katılım
14 Mayıs 2005
Mesajlar
967
Excel Vers. ve Dili
Microsoft Ofis 365
Altın Üyelik Bitiş Tarihi
06-01-2040
Sn wakkasss

Excel deki verileri sql database atıp daha sonra selektif seçmek konusunda yardımınızı rica ediyorum.Uzun zamandır bu konu kafamda ancak bir türlü işin içine giremedim.bana önerebileceğinizi döküman veya örnek dosya varsa ve gönderebilirseniz size minnettar kalacağım.

tekrar teşekkür ve selamlarımla
 
Katılım
8 Temmuz 2004
Mesajlar
254
Excel Vers. ve Dili
office 2007-mssql 2008 R2
Selam,

RST(3) varmı acaba databasenizde. İşyerimde yoğun olduğum için yaptıklarımı açıklayamayarum zaman zaman. 3 sayısı sütun indexinizi gösteririr. Yani rst(3) demekle oraya en baştan dördüncü sütunu koyuyorsunuz. rst(2) ile bir deneyin.

Sn.barons selektif seçimden kastınızı açıklarsanız yardımcı olabilirim tahmin ediyorum.

kolay gelsin.
 

zafer

Super Moderator
Yönetici
Katılım
8 Mart 2005
Mesajlar
3,288
Excel Vers. ve Dili
OFFICE 2003 TÜRKÇE
OFFICE 2010 TÜRKÇE
Merhaba

ListBox1.AddItem
ListBox1.List(0, 0) = rst(0)
ListBox1.List(0, 1) = rst(1)

ile listbox'a 2 sütünda yazdırabıliyorum, fakat
referansı 1 olan 3 kayıt olduğu halde listbox'ta sadece en baştaki 1 satırı getiriyor öbür kayıtları getireniyorum


Saygılarımla
 

zafer

Super Moderator
Yönetici
Katılım
8 Mart 2005
Mesajlar
3,288
Excel Vers. ve Dili
OFFICE 2003 TÜRKÇE
OFFICE 2010 TÜRKÇE
Merhaba

İlginize çok teşekkür ederim


Saygılarımla
 

zafer

Super Moderator
Yönetici
Katılım
8 Mart 2005
Mesajlar
3,288
Excel Vers. ve Dili
OFFICE 2003 TÜRKÇE
OFFICE 2010 TÜRKÇE
Merhaba

Vermiş olduğunuz Sayın Raider'in (Haluk Bey) linki çok faydalı oldu.

Bir ricam daha olacak

.Open "SELECT COL_NAME(OBJECT_ID('deneme1'),1)"

ile Deneme1 adlı table'dan 1 kolonun ismini getirtebiliyorum
Tüm kolonların ismini nasıl getirtebilirim

Kod'larım aşağıdaki gibidir

Private Sub ListBox3_Click()
databasename = ListBox2.Column(0)
Set cnt = New ADODB.Connection
strConn = "PROVIDER=SQLOLEDB;"
strConn = strConn & "DATA SOURCE=192.168.10.75;PWD=KONYA;INITIAL CATALOG=" & databasename & ";"
strConn = strConn & " INTEGRATED SECURITY=sspi;"
cnt.Open strConn
Set rst = New ADODB.Recordset
tablename = "deneme1"

With rst
.ActiveConnection = cnt
.Open "SELECT COL_NAME(OBJECT_ID('" & tablename & "'),2)"
Do While Not rst.EOF
ListBox4.AddItem
ListBox4.Column(0, X) = rst(0)


rst.MoveNext
X = X + 1
Loop
.Close
End With

End Sub


Saygılarımla
 
Katılım
8 Temmuz 2004
Mesajlar
254
Excel Vers. ve Dili
office 2007-mssql 2008 R2
Sn. Zafer,

Her database altında syscolumns diye bir tablo var. Ordan tüm kolon isimlerini alabilirsiniz. Ayrıca MASTER database altında tüm database isimleri. Yine her database'de sysobjects altında ise o database'e ait tabloların ismi var. Bu tablolardan yararlanabilirsiniz. Umarım yardımcı olur.

Kolay gelsin.
 

zafer

Super Moderator
Yönetici
Katılım
8 Mart 2005
Mesajlar
3,288
Excel Vers. ve Dili
OFFICE 2003 TÜRKÇE
OFFICE 2010 TÜRKÇE
Merhaba

Database isimlerini ve Table isimlerini listboxlara getiriyorum
fakat listbıx'tan table'yi seçtiğimde diğer listbox'a o table'a ait kolon isimlerinin gelmesini istiyorum.

Syscolumns ta kolon isimlri geliyor fakat hangi table'a ait olduklarını bilemiyorum isimler yok referans numaraları var


Saygılarımla
 
Katılım
8 Temmuz 2004
Mesajlar
254
Excel Vers. ve Dili
office 2007-mssql 2008 R2
Selam,

Sysobjects altında name sütunundan sonra her tablonun id si yazar. O tabloya ait sütunlar da syscolumns da id dedir.

yani sysobjects te tablonuzun id sini bulursanız(12343 olduğunu varsayalım) bu sorgu işinizi görecektir. :keyif:

Select * from syscolumns where id='12343'

Kolay gelsin.
 

zafer

Super Moderator
Yönetici
Katılım
8 Mart 2005
Mesajlar
3,288
Excel Vers. ve Dili
OFFICE 2003 TÜRKÇE
OFFICE 2010 TÜRKÇE
Merhaba

Çok teşekkür ederim
 
Üst