Sql Database'inden Bilgi sorgulama [Archive] - Excel Forum

PDA

Tüm Versiyonu Göster : Sql Database'inden Bilgi sorgulama


zafer
13-09-2005, 13:41
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

red_lion_72
13-09-2005, 14:14
selam şunu denermisiniz?

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
13-09-2005, 14:25
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

red_lion_72
13-09-2005, 14:36
Selam,


ComboBox1.AddItem RST(2)

bu kodu ilave edin.(Combo box eklemeyi unutmayın:) formunuza)

Kolay gelsin.

zafer
13-09-2005, 14:44
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

red_lion_72
13-09-2005, 14:50
Selam,

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

Kolay gelsin.

zafer
13-09-2005, 14:53
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
13-09-2005, 14:56
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

red_lion_72
13-09-2005, 15:01
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
13-09-2005, 15:59
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

red_lion_72
13-09-2005, 16:14
selam,

http://www.excel.web.tr/viewtopic.php?t=2441&highlight=ado

Sevgili Haluk'un çalışmasında epey değişik örnekler var. İsterseniz bir göz atın.

Kolay gelsin.

zafer
14-09-2005, 07:40
Merhaba

İlginize çok teşekkür ederim


Saygılarımla

zafer
14-09-2005, 17:26
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

red_lion_72
15-09-2005, 09:24
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
15-09-2005, 10:23
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

red_lion_72
15-09-2005, 10:37
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
15-09-2005, 12:42
Merhaba

Çok teşekkür ederim


Özel Arama