Toon posts:

[delphi 6] username/password skippen met inloggen

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik roep in delphi een database (werk.mdb) aan die ik eerst in de BDE adminstrator heb aangemaakt. Elke keer als ik hetzij met een ttable met een tquery of met een sql commando de database oproep krijg ik een inlogschermpje. Deze database word lokaal gebruikt en hoeft dus niet beveiligt te worden met een username/password. Bovendien kan ik alles invullen in dat popupje om in de database te komen. Mijn vraag is nu : hoe kan ik dat popupje skippen zodat er niet meer gevraagd word naar een username/password.

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 15-09 19:59

Creepy

Tactical Espionage Splatterer

Bij je database component: LoginPrompt op False zetten.
Volgende keer RTFM en Help -> Delphi Help -> TDatabase??

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


Verwijderd

Topicstarter
Ik gebruik geen Tdatabase component maar een Tquery en een Tdatasource component. Ik doe alles nu via dat datasource component. Kan het met die 2 componenten ? Of moet ik nu overstappen naar een Tdatabase ?

  • dusty
  • Registratie: Mei 2000
  • Laatst online: 21-02 00:06

dusty

Celebrate Life!

Ik hou wel van multiple-connecties naar dezelfde database :+

Back In Black!
"Je moet haar alleen aan de ketting leggen" - MueR


  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 15-09 19:59

Creepy

Tactical Espionage Splatterer

Op donderdag 08 november 2001 13:10 schreef dusty het volgende:
Ik hou wel van multiple-connecties naar dezelfde database :+
Whahahah :)

TQuery -> TDatabase -> databaseje (mdb/dbase/mssql/whatever)

Zo doe ik het meestal
1 keer de database openen.. en alle componenten koppelen aan de tdatabase..

Wat doe je met die query BTW? Als je select * gebruik in die query zonder where kan je net zo goed het TTable component gebruiken. (dus TTAble -> TDatabase)

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


Verwijderd

Topicstarter
Op donderdag 08 november 2001 13:19 schreef Creepy het volgende:

[..]

Whahahah :)

TQuery -> TDatabase -> databaseje (mdb/dbase/mssql/whatever)

Zo doe ik het meestal
1 keer de database openen.. en alle componenten koppelen aan de tdatabase..

Wat doe je met die query BTW? Als je select * gebruik in die query zonder where kan je net zo goed het TTable component gebruiken. (dus TTAble -> TDatabase)
Ik heb het even een tijdje met rust gelaten, nu begin ik er weer mee maar het is mij nog steeds niet gelukt :(

Wat bedoel je met "TQuery -> TDatabase" ?
Ik connect via een datasource naar mijn tquery en die connect naar de database.

En ja, ik gebruik select * from... statements en wil het dus daarom graat met een tquery (ipv ttable) doen. Ik weet ook dat het met een ttable kan maar het moet ook mogelijk zijn met een tquery.

Dus nogmaals : Kan iemand mij vertellen hoe ik de loginprompt escape met een datasource en tquery component ? Als ik het via een tdatabase moet doen hoe moet ik dan de tquery laten weten dat hij via de tdatabase moet connecten ?

alvast ontzettend bedankt.

  • whoami
  • Registratie: December 2000
  • Laatst online: 06:24
Je moet er een TDatabase tussen zetten wordt er bedoeld.

Dus, je zet een TDatabase componentje op uw datamodule of uw form. Die component laat je connecteren naar uw database. Uw Query component laat je verwijzen naar uw TDatabase component ipv direct naar de db.

En om uw login-probleem dan op te lossen zet je de LoginPrompt property van TDatabase op False.

https://fgheysels.github.io/


  • Tomatoman
  • Registratie: November 2000
  • Laatst online: 08:06

Tomatoman

Fulltime prutser

Als je bang bent dat een TDatabase component extra resources kost, wees dan gerust. Als een TTable of TQuery niet expliciet aan een TDatabase is gekoppeld, doet Delphi dit achter de schermen alsnog voor je >:). Het maakt dus geen enkel verschil voor resource-gebruik.

Een goede grap mag vrienden kosten.


Verwijderd

Topicstarter
Op vrijdag 18 januari 2002 11:02 schreef whoami het volgende:
Je moet er een TDatabase tussen zetten wordt er bedoeld.

Dus, je zet een TDatabase componentje op uw datamodule of uw form. Die component laat je connecteren naar uw database. Uw Query component laat je verwijzen naar uw TDatabase component ipv direct naar de db.

En om uw login-probleem dan op te lossen zet je de LoginPrompt property van TDatabase op False.
Kijk.. nu begrijp ik het !
Tdatabase heb ik op mijn form gezet, het connecten naar de database lukt nog niet maar daar kom ik nog wel.
De query connect nu direct naar de db op deze manier :
Databasename: werkbon_db (die heb ik via BDE admin aangemaakt)
SQL: select * from werkbon

Hoe laat ik nu de query weten dat hij naar de Tdatabase moet connecten ?

[edit] het connecten naar de db via de tdatabase is ook gelukt. Moet ik nu via een alias de query naar de tdatabase laten connecten ?

Verwijderd

Op donderdag 08 november 2001 13:19 schreef Creepy het volgende:

[..]

Whahahah :)

TQuery -> TDatabase -> databaseje (mdb/dbase/mssql/whatever)

Zo doe ik het meestal
1 keer de database openen.. en alle componenten koppelen aan de tdatabase..

Wat doe je met die query BTW? Als je select * gebruik in die query zonder where kan je net zo goed het TTable component gebruiken. (dus TTAble -> TDatabase)
Een TQuery is altijd efficiënter dan een TTable. Ksnapnie dat die er überhaupt nog in zit. Zelfs een SELECT * FROM bla zonder WHERE zal altijd sneller zijn dan een TTable (intern wordt nl. gewoon een SELECT * gedaan.

Als je vervolgens ook nog gaat filteren ben je met een TTable helemaal de klos. Wordt naar een nogal vreemde/inefficiënte SELECT * FROM bla WHERE blabla=blablabla vertaald.

TTable is imho voor mensen met SQL-vrees. Maar ik vraag me af waarom die sowieso al tegen DB's aan gaan praten. Mijn advies: altijd TDatabase, TSession en TQuery.

  • whoami
  • Registratie: December 2000
  • Laatst online: 06:24
Op vrijdag 18 januari 2002 11:11 schreef specialist het volgende:


Hoe laat ik nu de query weten dat hij naar de Tdatabase moet connecten ?
De Aliasname property van de TDatabase laat je verwijzen naar de alias die je met de BDE hebt aangemaakt.
In de databaseproperty van TDatabase vul je een naam in die je aan uw TDatabase component geeft.
En in uw TQuery component kies je bij DatabaseName de naam die je zonet aan uw TDatabase component hebt gegeven.

https://fgheysels.github.io/


  • whoami
  • Registratie: December 2000
  • Laatst online: 06:24
Op vrijdag 18 januari 2002 11:27 schreef hvdberg het volgende:


TTable is imho voor mensen met SQL-vrees. Maar ik vraag me af waarom die sowieso al tegen DB's aan gaan praten. Mijn advies: altijd TDatabase, TSession en TQuery.
Hmm, een TSession gebruiken is toch enkel maar nodig als je met meerdere sessies gaat werken. Indien je maar 1 sessie hebt, dan gaat Delphi daar wel voor zorgen.

https://fgheysels.github.io/


Verwijderd

Topicstarter
Op vrijdag 18 januari 2002 11:27 schreef hvdberg het volgende:
TTable is imho voor mensen met SQL-vrees.
LOL

je hebt wel gelijk dude ...

Maar het voordeel van die ttable is dat er meer mensen (waar het niveau niet zo hoog ligt) daardoor kunnen leren programmeren. Ik moet zeggen dat ik ook altijd ttable gebruikte en ik had er plezier mee (daar gaat het nog om) Nu je wat meer ervaringen opdoet ga je werken aan efficentie en snelheid, dan ga je uiteraard over naar Tquery !

Verwijderd

Op vrijdag 18 januari 2002 11:39 schreef whoami het volgende:

[..]

Hmm, een TSession gebruiken is toch enkel maar nodig als je met meerdere sessies gaat werken. Indien je maar 1 sessie hebt, dan gaat Delphi daar wel voor zorgen.
Is waar... maar ik heb deze TSession gewoonte mezelf toegeëigend nadat ik 1x een ISAPI DLL met Delphi had gebouwd. Tevens zodra je een Client/Server toepassing met bijvoorbeeld MIDAS gaat doen dan is een session nooit weg.

Bovendien wordt je met een Session meer er toe verplicht om over Resource gebruik na te denken. Pleur maar eens 30 x een TDatabase component in een app. Moet je opletten wat er gebeurd.

Hoe dan ook, Sessions waren hier niet aan de orde maar het is imho wel raadzaam om er eens over na te denken.

Verwijderd

Topicstarter
Op vrijdag 18 januari 2002 11:37 schreef whoami het volgende:

[..]

De Aliasname property van de TDatabase laat je verwijzen naar de alias die je met de BDE hebt aangemaakt.
In de databaseproperty van TDatabase vul je een naam in die je aan uw TDatabase component geeft.
En in uw TQuery component kies je bij DatabaseName de naam die je zonet aan uw TDatabase component hebt gegeven.
Het is gelukt.
ONTZETTEND bedankt voor jullie hulp !! :D

  • Tomatoman
  • Registratie: November 2000
  • Laatst online: 08:06

Tomatoman

Fulltime prutser

Hoe laat ik nu de query weten dat hij naar de Tdatabase moet connecten ?
1. Zet een TDatabase in een datamodule.

2. Stel de property Name in, bijvoorbeeld op MainDatabase.

3. Dubbelklik op de component en stel alle eigenschappen in:
- Gebruik als naam (property DatabaseName) iets als MainDB. Dit is dus iets anders dan de Name property.
- Nu vul je óf AliasName óf DriverName in.
- Klik op Default. Alle standaardparameters worden nu ingevuld in de Params property.
- Als je een aliasnaam hebt gekozen, is bij de parameter Path meestal al iets ingevuld. Als je DriverName hebt ingevuld, moet je bij de driver Standard (=Paradox/ Dbase) bij Path de tabelnaam invullen.
- Vinkje bij LoginPrompt deselecteren (property LoginPrompt = False).

3. Gooi een TQuery of TTable in je datamodule. Selecteer bij DatabaseName van de query dezelfde naam die je bij DatabaseName van de TDatabase hebt ingevuld.

4. Stel de SQL property in bij een TQuery, of rechtsklik op je component en gebruik SQL Builder. Gebruik je een TTable, selecteer dan bij TableName de gewenste tabel. Bij een Paradox- of DBase- tabel is er altijd maar één keuze voor de tabelnaam.

5. Rechtsklikken op je TQuery/ TTable om de Fields Editor te selecteren. Rechtsklikken in de Fields Editor en de gewenste velden selecteren.

De rest ken je al: Datasource aan je TQuery/ TTable hangen, controls zoals een TdatabaseGrid aan de datasource hangen. Klaar!

Een goede grap mag vrienden kosten.


Verwijderd

Topicstarter
Op vrijdag 18 januari 2002 13:15 schreef tomatoman het volgende:

[..]

1. Zet een TDatabase in een datamodule.

2. Stel de property Name in, bijvoorbeeld op MainDatabase.

3. Dubbelklik op de component en stel alle eigenschappen in:
- Gebruik als naam (property DatabaseName) iets als MainDB. Dit is dus iets anders dan de Name property.
- Nu vul je óf AliasName óf DriverName in.
- Klik op Default. Alle standaardparameters worden nu ingevuld in de Params property.
- Als je een aliasnaam hebt gekozen, is bij de parameter Path meestal al iets ingevuld. Als je DriverName hebt ingevuld, moet je bij de driver Standard (=Paradox/ Dbase) bij Path de tabelnaam invullen.
- Vinkje bij LoginPrompt deselecteren (property LoginPrompt = False).

3. Gooi een TQuery of TTable in je datamodule. Selecteer bij DatabaseName van de query dezelfde naam die je bij DatabaseName van de TDatabase hebt ingevuld.

4. Stel de SQL property in bij een TQuery, of rechtsklik op je component en gebruik SQL Builder. Gebruik je een TTable, selecteer dan bij TableName de gewenste tabel. Bij een Paradox- of DBase- tabel is er altijd maar één keuze voor de tabelnaam.

5. Rechtsklikken op je TQuery/ TTable om de Fields Editor te selecteren. Rechtsklikken in de Fields Editor en de gewenste velden selecteren.

De rest ken je al: Datasource aan je TQuery/ TTable hangen, controls zoals een TdatabaseGrid aan de datasource hangen. Klaar!
Ontzettend bedankt voor je uitgebreide uitleg maar het was al gelukt hoor :)
Pagina: 1