Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB6: VB + tietokanta + ado

MattiKalervo [21.09.2003 14:45:05]

#

Hei,
olen tehnyt yhden projektin VB:llä, joka käyttää Acces tietokantaa. En ollut tyytyväinen. Korjaan tekeleeni ja käytän nyt ADO:a keskustelemaan tietokannan kanssa. Haluan koodin lyhyeksi. Ongelma on seuraava:
Tietokantaan voi luoda useita tabeleita, joihin tallennetaan kunkin käyttäjän omia keilatuloksia. Tämän olen saanut toimimaan.
Kuinka määrittelen ADO:lla sen tabelin, jota haluan käyttää?
Tabelissä on noin 25 kenttää, joissa on tekstitietoa, päiväystä ja numeroita.
Kuinka saan luettua yhden tietueen ( noin 25 kenttää) ja kirjoitettua sen formilla oleviin tekstikenttiin, kalenteriobjektiin hyvin lyhyellä koodilla?
Haluaisin käyttää samaa formia myös uuden tiedon tallentamiseen tietokantaan. Lyhyt koodi siihenkin olisi paikallaan?

Kiittäen etukäteen kaikkia avun tarjoajia
Matti

Halenism [23.09.2003 22:42:00]

#

Hmms.. tarkoitathan tabelilla taulua, eli tablea?
enivei..tablen jota käsitellään voit määritellä recordsetin kyselyssä, eli jonkin sortin sql-lauseessa:

yhteys tietokantaan onnistuu luomalla "connection" tyyliin

yhteys as new connection

yhteys.open "provider="yhteysmoottorisi";SOURCE="tietokannan sijainti""

jonka jälkeen avataan recordsetti

setti as new recordset

setti.open " selec * from TAULU where jokin hakuehto tähän", yhteys, adOpenStatic, adLockOptimistic

nyt pitäisi kaikki ehdon täyttävät härpäkkeet haluamastasi taulusta olla setissä josta voit sitten tunkea halut kentät esim tekstikenttään tyyliin

tekstikenttä.text = setti!kenttä

Toivottavasti tuosta oli jotain apua ja jos ei niin muotoileppa kysymystä uudelleen niin tiedän paremmin mitä haluat ja olet jo yrittänyt.

MattiKalervo [10.10.2003 18:03:29]

#

Hei!
Kiitos avusta. Ohjelmointi etenee hitaasti ja varnasti.
Matti

glottis [13.10.2003 14:35:29]

#

lainaus:

Hei,
olen tehnyt yhden projektin VB:llä, joka käyttää Acces tietokantaa. En ollut tyytyväinen. Korjaan tekeleeni ja käytän nyt ADO:a keskustelemaan tietokannan kanssa. Haluan koodin lyhyeksi. Ongelma on seuraava:
Tietokantaan voi luoda useita tabeleita, joihin tallennetaan kunkin käyttäjän omia keilatuloksia. Tämän olen saanut toimimaan.
Kuinka määrittelen ADO:lla sen tabelin, jota haluan käyttää?
Tabelissä on noin 25 kenttää, joissa on tekstitietoa, päiväystä ja numeroita.
Kuinka saan luettua yhden tietueen ( noin 25 kenttää) ja kirjoitettua sen formilla oleviin tekstikenttiin, kalenteriobjektiin hyvin lyhyellä koodilla?
Haluaisin käyttää samaa formia myös uuden tiedon tallentamiseen tietokantaan. Lyhyt koodi siihenkin olisi paikallaan?

Kiittäen etukäteen kaikkia avun tarjoajia
Matti

Mitä jos tutkisit tuota minun tekemääni DVD Katalogi -ohjelmaa.. siellä pitäisi olla vastausta esittämiisi kysymyksiin. Ainakin periaate on sama ei yhtä VB:llä luotua formia voidaan käyttää tiedon selaamiseen, etsimiseen, tallentamiseen ja jopa poistamiseen.... kerrohan jos auttoi.

Tv: Jarmo Hänninen aka Glottis

Wizard [19.10.2003 22:33:16]

#

Lyhyesti:

Uuden tietueen lisäys tietokantaan toimii ADOlla: setti.addnew

Ja itse käytän sitä niin, että kun lisään uuden, niin se pitää myös tallentaa sen jälkeen. Tuo edellinen vain lisää uuden rivin tietokantaan eikä se vielä tallenna tietoja sinne eli tallennus suoritetaan komennolla setti.update

Lisäykseen et tarvitse kuin tuon yhden rivin. Update (tallenna) käskyllä sinun pitää myös määritellä ne kentät jotkat haluat päivittää eli esim:

setti.fields("Kentän_nimi_select_kyselyssä").value = txtTekstikentta.text

setti.update


Tuota tallenna käskyä voit käyttää myös samassa kun haluat vain muuttaa jonkin tietueen tietoja (eli päivittää).

Wizard [19.10.2003 22:36:23]

#

Unohdin mainita: select lauseella ei kannata käyttää * merkintään vaan seuraava tapa on paljon parempi:

select sukunimi, etunimi, osoite from taulun_nimi

Lue jostain SQL-92 standardin peruskurssi (netissä niitä lienee suomeksikin joitakin).

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta