Access ja kyselyn teko

Olisi tehtävä seuraavanlainen homma.

- Olisi n.300-400 tuotetta
- Tuotteissa lisäaineita tietty määrä (20-30)
- Ihminen allerginen tietyille lisäaineille
- Ihminen saisi rastittaa mille tuotteille on allerginen ja softa näyttäisi mitkä tuotteet soveltuvat käyttöön.

Mutta mites kannattaisi lähteä työstämään? Oon jonkun verran käyttänyt Accessia mut ihan perusjuttuja vaan syötellyt ja jonkun verran kyselyitä tehnyt.

Siis mistä lähden liikkeelle? Eri riveille tuotteet yksitellen ja sit omiin sarakkeisiin lisäaineet vai? Sit joku kysely?

Antakaapa apua niin pääsisi eteenpäin!
10979
Äänestä

Muut lukivat myös

Vastaukset 10

Vanhimmat

Heipä hei, tuttu probleema :)
Tuohon on oikeastaan kaksi yleistä tapaa ratkaista ongelma. Oikeaoppinen ja vaikea, sekä vääräoppinen ja helppo. =)
Se helpompi tapaus on sellainen, että teet tietokantaan yhden taulun nimeltään tuote ja siihen laitat sarakkeet tuotteen nimelle yms. ja sitten jokaiselle lisäaineelle oman sarakkeen, joiden tyypiksi laitat yes/no. Tällainen ratkaisu on helppo ymmärtää ja toteuttaa, mutta vaikea ylläpitää, ja muutenkaan ei ole suositeltavaa tehdä noin valtavan monisarakkeista taulua, missä on samantyyppisiä sarakkeita paljon.
Oikeaoppinen, relaatiomallinen tapa olisi tehdä kolme taulua: tuote, lisäaine sekä nämä yhdistävä taulu (lapsitaulu) esim. tuote_lisäaine. Tuote- ja lisäaine-tauluihin tulee id, nimi yms. tärkeitä tuote/ainekohtaisia tietoja. Ja lapsitauluun tulee ainoastaan sarakkeet tuote_id ja lisäaine_id, eli vastaavat yksilöivät tiedot (perusavaimet) tuote- ja lisäaine-tauluista. Valitse ne kummatkin perusavaimeksi (shift-nappi pohjassa valitse kummatkin ja klikkaa avain-kuvaketta). Sitten pitää tehdä yhteydet (relationships). Se löytyy työkalut/tools-valikosta. Valitse kaikki taulut ja sitten drag&drop tuote taulun id lapsitaulun tuote_id:seen ja sama lisäaineelle. Kannattaa ruksata viite-eheyden säilytys ja johdannaispäivitys ja -poisto kohdat yhteyden ominaisuudet -ikkunasta. Ja kanta on tietojen syöttämistä vaille valmis!
Eiköhän ollut jo tarpeeksi sekavaa... :)

Äänestä
  • Hei ja kiitos ohjeista, mutta saiskos vielä vähän lisäinfoa eli oon tehnyt seuraavaa:

    Luonut taulun: tuotteet, jossa muutama sarake jossa tuote_ID (laskuri ja perusavain), tuotteen nimi (Teksti) ja tuotteen kuvaus (teksti)

    Luonut toisen taulun: Lisäaine, jossa Lisäaine_ID (Laskuri ja perusavain), Tuotteen nimi (Teksti) ja Tuotteen kuvaus (Teksti)

    Luonut kolamnnen taulun jonka nimi tuote_lisäaine, jossa Tuote_ID ja Lisäaine_ID ja molemmissa on avain kuvake

    Sitten yritän tehdä yhteyksiä ohjeiden mukaan niin se herjaa että yhteydessä on oltava sama määrä kenttiä ja kenttien tiedosto tyyppien on vastattava toisiaan! Siis mitä ??

    Eli miten pitäis nyt jatkaa tästä?? Olen aika turisti tämänlaisissa tietokannoissa?? Voin lähettää sulle tämän tietokannan maililla jos pystyt jeesamamaan?? Olisin kovin kiitollinen avustasi!!!

    Äänestä

  • Rookie kirjoitti:

    Hei ja kiitos ohjeista, mutta saiskos vielä vähän lisäinfoa eli oon tehnyt seuraavaa:

    Luonut taulun: tuotteet, jossa muutama sarake jossa tuote_ID (laskuri ja perusavain), tuotteen nimi (Teksti) ja tuotteen kuvaus (teksti)

    Luonut toisen taulun: Lisäaine, jossa Lisäaine_ID (Laskuri ja perusavain), Tuotteen nimi (Teksti) ja Tuotteen kuvaus (Teksti)

    Luonut kolamnnen taulun jonka nimi tuote_lisäaine, jossa Tuote_ID ja Lisäaine_ID ja molemmissa on avain kuvake

    Sitten yritän tehdä yhteyksiä ohjeiden mukaan niin se herjaa että yhteydessä on oltava sama määrä kenttiä ja kenttien tiedosto tyyppien on vastattava toisiaan! Siis mitä ??

    Eli miten pitäis nyt jatkaa tästä?? Olen aika turisti tämänlaisissa tietokannoissa?? Voin lähettää sulle tämän tietokannan maililla jos pystyt jeesamamaan?? Olisin kovin kiitollinen avustasi!!!

    Saamasi ohje oli täsmälleen oikea ja epäilemättä Access hyvin pysyy hoitamaan homman - mutta jos haluat päästä helpommalla (etkä opetella ohjelmaa ja ohjelmointia), voisi FileMaker Pro olla parempi alusta. Se ei ole lainkaan niin allerginen pienille teoreettisille poikkeamille Oikeasta Rakenteesta kuin Access ja paljon helpompi pistää pystyyn.

    Äänestä

  • Petri kirjoitti:

    Saamasi ohje oli täsmälleen oikea ja epäilemättä Access hyvin pysyy hoitamaan homman - mutta jos haluat päästä helpommalla (etkä opetella ohjelmaa ja ohjelmointia), voisi FileMaker Pro olla parempi alusta. Se ei ole lainkaan niin allerginen pienille teoreettisille poikkeamille Oikeasta Rakenteesta kuin Access ja paljon helpompi pistää pystyyn.

    Jeps! Eipä ole ohjelma tuttu, mutta täytyy tutustua! En epäillytkään että ohjeet eivät olisi olleet selkeät, mutta kun ei ole accessia juurikaan käyttänyt se ei tuntunut niin helpolta! Siksi ajattelin että jos oisi lisäohjetta saanut tai apua jollain tavoin!

    Mutta edelleen haluaisin oppia Accessin käyttöä koska aikaa on ja ohjelmakin löytyy! Mutta kohta tutustutaan FileMakerin antiin!

    Lisäohjeita odotellessa!

    Äänestä

  • Petri kirjoitti:

    Saamasi ohje oli täsmälleen oikea ja epäilemättä Access hyvin pysyy hoitamaan homman - mutta jos haluat päästä helpommalla (etkä opetella ohjelmaa ja ohjelmointia), voisi FileMaker Pro olla parempi alusta. Se ei ole lainkaan niin allerginen pienille teoreettisille poikkeamille Oikeasta Rakenteesta kuin Access ja paljon helpompi pistää pystyyn.

    No latailin tuossa sit tuon Filemakerin pro 7 ja yrittelin sillä pari tuntia käännellä ja väännellä, mutta kun ei ole tuo tietokanta logiikkaa oikein hallussa ole niin jäi sit tekemättä silläkin tuo sama asia. Oli sentään access suomeksi mut kun vielä englantia yritti suodatella niin loppui taidot.

    Saapi kertoa miten sen siinä sitten hoitaa, ken osaa???

    Äänestä

  • Rookie kirjoitti:

    No latailin tuossa sit tuon Filemakerin pro 7 ja yrittelin sillä pari tuntia käännellä ja väännellä, mutta kun ei ole tuo tietokanta logiikkaa oikein hallussa ole niin jäi sit tekemättä silläkin tuo sama asia. Oli sentään access suomeksi mut kun vielä englantia yritti suodatella niin loppui taidot.

    Saapi kertoa miten sen siinä sitten hoitaa, ken osaa???

    Eli kolme taulua tarvitaan ja logiikan siis täytyy olla sikäli kunnossa. Erot tulevat esiin vasta sen jälkeen, joskin, kuten sanottu, FMP on anteeksiantavampi jo alussa. (Tosin itse en ole vielä siirtynyt versioon 7, joten en tiedä onko tilanne muuttunut.)

    MikroPC näkyy antaneen FMP:lle viisi tähteä.
    http://mikropc.net/nettilehti/artikkeli.jsp?id=ece_1M5RwZ6J0C&ret=tuotteet

    Äänestä

  • Rookie kirjoitti:

    No latailin tuossa sit tuon Filemakerin pro 7 ja yrittelin sillä pari tuntia käännellä ja väännellä, mutta kun ei ole tuo tietokanta logiikkaa oikein hallussa ole niin jäi sit tekemättä silläkin tuo sama asia. Oli sentään access suomeksi mut kun vielä englantia yritti suodatella niin loppui taidot.

    Saapi kertoa miten sen siinä sitten hoitaa, ken osaa???

    Näin illan päätteeksi palasin astialle, ja huomasin, että tapaus saattaakin olla suorastaan hankala.

    On hyvin helppoa generoida lista tuotteista joissa on jotain ainetta, mutta keskustellun tietokantarakenteen (joka tuntuu ainoalta mahdolliselta) puitteissa, toisin päin onkin vaikeampaa.

    Puhuttuun 'välitaulukkoon' (koostumus) tulee siis yksi tietue per tuote ja raaka-aine. Siitä on helppo valita ne, jotka täyttävät ehdon ON, mutta ehto EI OLE ei ihan suoraan toimi.

    Otetaanpa kolme tuotetta: kaurakeksit ('Anzac biscuit' esimerkiksi), kaurapuuro ja mysli.

    Näistä tulee aika monta koostumus-tietuetta:
    - puuro kaura
    - puuro vesi
    - puuro suola
    - Anzac kaura
    - Anzac voi
    - Anzac kookospähkinä
    - Anzac siirappi
    - mysli kaura
    - mysli kookospähkinä
    - mysli hasselpähkinä
    - mysli hunaja
    - jne.

    Valitsemalla ne, joissa ei ole kookosta tai hasselia, valituksi silti jää useampi tietue, joissa Anzac tai mysli on mukana. Siis ihan puhtaat valinnat (jotka muuten ovat siis joukko-opillisia operaatioita: relaatiotietokannat perustuvat joukko-oppiin) eivät tuota tulosta, vaan ilmeisesti valinta täytyy ohjelmoida muuttujien avulla.

    Toivottavasti joku osoittaa että olen väärässä!

    Äänestä

  • Petri kirjoitti:

    Näin illan päätteeksi palasin astialle, ja huomasin, että tapaus saattaakin olla suorastaan hankala.

    On hyvin helppoa generoida lista tuotteista joissa on jotain ainetta, mutta keskustellun tietokantarakenteen (joka tuntuu ainoalta mahdolliselta) puitteissa, toisin päin onkin vaikeampaa.

    Puhuttuun 'välitaulukkoon' (koostumus) tulee siis yksi tietue per tuote ja raaka-aine. Siitä on helppo valita ne, jotka täyttävät ehdon ON, mutta ehto EI OLE ei ihan suoraan toimi.

    Otetaanpa kolme tuotetta: kaurakeksit ('Anzac biscuit' esimerkiksi), kaurapuuro ja mysli.

    Näistä tulee aika monta koostumus-tietuetta:
    - puuro kaura
    - puuro vesi
    - puuro suola
    - Anzac kaura
    - Anzac voi
    - Anzac kookospähkinä
    - Anzac siirappi
    - mysli kaura
    - mysli kookospähkinä
    - mysli hasselpähkinä
    - mysli hunaja
    - jne.

    Valitsemalla ne, joissa ei ole kookosta tai hasselia, valituksi silti jää useampi tietue, joissa Anzac tai mysli on mukana. Siis ihan puhtaat valinnat (jotka muuten ovat siis joukko-opillisia operaatioita: relaatiotietokannat perustuvat joukko-oppiin) eivät tuota tulosta, vaan ilmeisesti valinta täytyy ohjelmoida muuttujien avulla.

    Toivottavasti joku osoittaa että olen väärässä!

    Pyh. Jahtasin väärää riistaa. Filemaker Pro itse asiassa pystyy hoitamaan koko jutun yhdessä taulukossa ja kahdella kentällä.

    Rakenne:
    - Ruoka
    - Ainekset

    Tiedonsyötössä Ainekset-kenttään pannaan kaikki ainekset, return väliin. Kyselyä varten on oma 'layout' jossa Ainekset -kenttä näytetään 'Check box' -moodissa ja 'Value list' tulee Ainekset -kentässä olevista tiedoista ('use values from field...').

    Kysely pitää kuitenkin 'ohjelmoida' (script): haluamme tietysti löytää ne joissa kysyttyjä aineita ei ole (eli 'Find' toimintoon sanotaan 'Omit.')

    Loppukäyttäjää varten valitettavasti tarvitaan sekä salasanasuojauksia että mieluimmin erityinen 'Developer' -versiolla tehty systeemi, jossa normaalit menut eivät ole lainkaan käytettävissä.

    Eli käytä joko kymmeniä tunteja Accessin ohjelmointiin tai osta FMP Developer ja pistä systeemi kasaan puolessa päivässä, tyyilikkäät käyttäjäruudut mukaanluettuna.

    Tekninen selitys:

    FMP:n tekstikentät todellakin ottavat indeksoinnin kannalta useita arvoja, CR-erotettuna, joten ei tarvita useita sarakkeita. FMP:n 'Check box' toimii niin, että se lähettää kenttään tai kyselyyn tekstin, ei vain ykköstä tai nollaa. 'Values from field' generoi check boxit indeksin perusteella. Kyselylomake on sama kuin käyttölomake.

    Äänestä

  • Petri kirjoitti:

    Pyh. Jahtasin väärää riistaa. Filemaker Pro itse asiassa pystyy hoitamaan koko jutun yhdessä taulukossa ja kahdella kentällä.

    Rakenne:
    - Ruoka
    - Ainekset

    Tiedonsyötössä Ainekset-kenttään pannaan kaikki ainekset, return väliin. Kyselyä varten on oma 'layout' jossa Ainekset -kenttä näytetään 'Check box' -moodissa ja 'Value list' tulee Ainekset -kentässä olevista tiedoista ('use values from field...').

    Kysely pitää kuitenkin 'ohjelmoida' (script): haluamme tietysti löytää ne joissa kysyttyjä aineita ei ole (eli 'Find' toimintoon sanotaan 'Omit.')

    Loppukäyttäjää varten valitettavasti tarvitaan sekä salasanasuojauksia että mieluimmin erityinen 'Developer' -versiolla tehty systeemi, jossa normaalit menut eivät ole lainkaan käytettävissä.

    Eli käytä joko kymmeniä tunteja Accessin ohjelmointiin tai osta FMP Developer ja pistä systeemi kasaan puolessa päivässä, tyyilikkäät käyttäjäruudut mukaanluettuna.

    Tekninen selitys:

    FMP:n tekstikentät todellakin ottavat indeksoinnin kannalta useita arvoja, CR-erotettuna, joten ei tarvita useita sarakkeita. FMP:n 'Check box' toimii niin, että se lähettää kenttään tai kyselyyn tekstin, ei vain ykköstä tai nollaa. 'Values from field' generoi check boxit indeksin perusteella. Kyselylomake on sama kuin käyttölomake.

    Hmmm.... Tunnut ymmärtävän noiden tietokantojen päälle aika paljon! Olisitkos ystävällinen ja voisit laittaa mulle malli esimerkin kyssisestä taulukosta sähköpostilla tästä FileMaker pro versiosta niin voisin yrittää sitä kautta ymmärtää asiaa! Nyt ei tunnu oikein aukeavan tää systeemi mulle vaikka kuinka yritän!

    Olisin suuresti kiitollinen jos pystyt jeesaamaan mua tässä!

    E-mail: [email protected]

    Äänestä

  • Rookie kirjoitti:

    Hmmm.... Tunnut ymmärtävän noiden tietokantojen päälle aika paljon! Olisitkos ystävällinen ja voisit laittaa mulle malli esimerkin kyssisestä taulukosta sähköpostilla tästä FileMaker pro versiosta niin voisin yrittää sitä kautta ymmärtää asiaa! Nyt ei tunnu oikein aukeavan tää systeemi mulle vaikka kuinka yritän!

    Olisin suuresti kiitollinen jos pystyt jeesaamaan mua tässä!

    E-mail: [email protected]

    Päädyin siihen, että kaksi taulua on parempi kuin yksi, niin ei tule vahinkoja, kun 'käyttäjä' vain katselee dataa kyselytaulun kautta eikä (kunhan laittaa salasanasuojauksen) pääse muuttamaan mitään.

    Eipä tuohon raakileeseen mennyt kuin puoli tuntia - mutta kyllä se jo toimii.

    Äänestä

Kommentoi aloitusta


Rookie kirjoitti:

Olisi tehtävä seuraavanlainen homma.

- Olisi n.300-400 tuotetta
- Tuotteissa lisäaineita tietty määrä (20-30)
- Ihminen allerginen tietyille lisäaineille
- Ihminen saisi rastittaa mille tuotteille on allerginen ja softa näyttäisi mitkä tuotteet soveltuvat käyttöön.

Mutta mites kannattaisi lähteä työstämään? Oon jonkun verran käyttänyt Accessia mut ihan perusjuttuja vaan syötellyt ja jonkun verran kyselyitä tehnyt.

Siis mistä lähden liikkeelle? Eri riveille tuotteet yksitellen ja sit omiin sarakkeisiin lisäaineet vai? Sit joku kysely?

Antakaapa apua niin pääsisi eteenpäin!

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu