[asp.net]SQL database connectie met Dreamweaver MX

Pagina: 1
Acties:

  • wustenveld
  • Registratie: Februari 2002
  • Laatst online: 08-08 17:31
Ik heb een vraag, ik werk op een winXP machine met IIS en .net Framework. Lokaal heb ik de SQL server desktop engine (MSDE2000) draaien. In SQL heb ik een database aangemaakt en een tabel via ASP.NET web matrix. Nu ga ik de site bouwen met dreamweaver MX, omdat hier alle basisfuncties netjes in staan en aangezien de site toch iets simpels wordt kan dat wel. Nu moet ik met MX een connectie maken naar de database. Dus ik ga fijn naar databases->OLE DB Connections toe en klik op Build (de meest eenvoudige methode leek mij). Ik geef daar aan dat mijn pc de sql-server is en dat ie geïntegreerde Windows-NT beveiliging moet gebruiken. Ik kan nu een database selecteren en de verbinding testen en alles lijkt goed te gaan. Dus ik klik op ok, in het dialoogvenster van OLE DB connection klik ik nogmaals op test om alles zeker te weten en dan krijg ik de melding: Login failed for user 'EDUARD\IUSR_EDUARD'.

Hoe kan ik er nou voor zorgen dat die IUSR_EDUARD wél toegang krijgt tot de SQL database?? Ik heb de hele ochtend al documentaties enz opgezocht maar kan niks zinnigs vinden. Ik hoop dat een van jullie dit weet, dan kan ik eindelijk beginnen aan die site. Het is misschien een beetje een domme vraag en daarom vind ik het ook zo irritant. Normaal gesproken doe ik alleen maar php maar nu moet ik ineens een site met asp.net maken waar ik dus totaal geen verstand van heb. Gelukkig dat dreamweaver al die standaard functies heeft waardoor het op zich wel mogelijk is, maar ik krijg nu niet eens een simpele database connectie op poten.
Alvast bedankt voor de hulp

  • Buzzman
  • Registratie: Juni 2000
  • Niet online
Je kan de IUSR rechten geven op de database... maar dat is niet altijd even handig, omdat de IUSR anoniem kan inloggen..

Wat je kan doen is een login maken op je database, "dbuser" ofzo, en die dbuser laten inloggen.

  • wustenveld
  • Registratie: Februari 2002
  • Laatst online: 08-08 17:31
goed plan, alleen hoe maak ik een login in de database?? Het enige wat ik op m'n pc kan terug vinden van MSDE2000 is de SQL server Service Manager waarmee ik de server kan starten en stoppen maar nergens een usermanagement. In het usermanagement van winXP kan ik ook niks terugvinden voor SQL logins?? Een dbuser gebruikersnaam heb ik trouwens al wel aangemaakt in winXP, nu nog op een of andere manier koppelen aan de database.

  • Buzzman
  • Registratie: Juni 2000
  • Niet online
Ik doe dat altijd met de enterprise manager, maar die zal dan wel niet bij de msde zitten ;)

Geen idee hoe je het dan moet doen? Kan je ook niet ergens die NT user rechten geven ofzo?

  • whoami
  • Registratie: December 2000
  • Laatst online: 09:56
Je zult afaik een user (dbuser) moeten adden op de databank. Ik denk dat je daarvoor eens best een SQL tutorial ofzo doorneemt. Ik weet ook het precieze statement ofzo niet, maar imho zal het iets in deze richting moeten zijn:
code:
1
CREATE USER ....
oid.

Even een andere opmerking:
Misschien moet je toch best eens ASP.NET (of minstens het .NET framework) onder de loupe nemen. Ik weet niet welke code die DreamWeaver voor jou zal genereren, maar ik denk wel dat als je het zelf/handmatig doet, je een veel betere performance zult verkrijgen. (Naast het feit dat je ook beter zal weten waar je mee bezig bent).

Als je een connectie wilt leggen met een SQL Server/MSDE database, moet je eens kijken naar de System.Data.SqlClient namespace. Daar heb je nl. de volgende classes:
code:
1
2
3
SqlConnection,
SqlCommand,
SqlDataAdapter

Die je zeker zult kunnen gebruiken.

[ Voor 6% gewijzigd door whoami op 09-12-2002 13:16 ]

https://fgheysels.github.io/


  • wustenveld
  • Registratie: Februari 2002
  • Laatst online: 08-08 17:31
Ik denk ook dat het beter is om me te verdiepen in asp.net enzo, het is alleen niet nuttig omdat een opdracht als deze maar een eenmalige opdracht is voor mij, normaal gesproken doe ik php. Daarom wil ik niet precies weten wat er allemaal gebeurt door dreamweaver omdat ik het later toch niet meer zal gebruiken. De performance wordt zeker beter als ik zelf ga coden, zie ik met php ook ben toen ook begonnen met de php code van dreamweaver, maar nu ik zelf alles schrijf zijn de applicaties zeker 50% sneller geworden.

Maar ja, is het met sql server hetzelfde als met mySQL qua gebruikers aanmaken, ik bedoel is het ook gewoon een tabel waar alles in staat ofzo??

  • whoami
  • Registratie: December 2000
  • Laatst online: 09:56
wustenveld schreef op 09 December 2002 @ 13:18:
Ik denk ook dat het beter is om me te verdiepen in asp.net enzo, het is alleen niet nuttig omdat een opdracht als deze maar een eenmalige opdracht is voor mij, normaal gesproken doe ik php. Daarom wil ik niet precies weten wat er allemaal gebeurt door dreamweaver omdat ik het later toch niet meer zal gebruiken. De performance wordt zeker beter als ik zelf ga coden, zie ik met php ook ben toen ook begonnen met de php code van dreamweaver, maar nu ik zelf alles schrijf zijn de applicaties zeker 50% sneller geworden.
Ik zei dat gewoon maar omdat er op dit moment 2 namespaces zijn in .NET mbt classes voor database-toegang:
System.Data.OleDb en System.Data.SqlClient.
Als je connectie maakt met SQL Server/MSDE kun je best die laatste gebruiken, omdat die volledig gericht is op Sql Server/MSDE. Mbhv die OleDb classes zal het ook wel lukken, maar daar ga je wel wat performance moeten inboeten.
Maar ja, is het met sql server hetzelfde als met mySQL qua gebruikers aanmaken, ik bedoel is het ook gewoon een tabel waar alles in staat ofzo??

Hoe het er intern aan toe gaat, zal wel iets anders zijn. In Sql Server worden alle objecten ook in een tabel bijgehouden (sysobjects). De users worden afaik bijgehouden in een tabel sysusers.

[ Voor 3% gewijzigd door whoami op 09-12-2002 13:25 ]

https://fgheysels.github.io/


  • Buzzman
  • Registratie: Juni 2000
  • Niet online
Kijk hier eens voor de gein:
http://samples.gotdotnet.com/quickstart/aspplus/

Staat erg veel info over wat jij wil :)

C#:
1
2
3
4
5
SqlConnection myConnection = new SqlConnection("server=(local)\NetSDK;database=pubs;Trusted_Connection=yes");
SqlDataAdapter myCommand = new SqlDataAdapter("select * from Authors", myConnection);

DataSet ds = new DataSet();
myCommand.Fill(ds, "Authors");

  • whoami
  • Registratie: December 2000
  • Laatst online: 09:56
Bekijk anders eens de stored procedure:
code:
1
sp_addlogin

(Die zit in SQL Server, en wie weet ook in MSDE).

https://fgheysels.github.io/


  • wustenveld
  • Registratie: Februari 2002
  • Laatst online: 08-08 17:31
oke, als ik met sql commando's als CREATE USER m'n users kan aanmaken enzo dan moet ik alleen nog weten hoe ik in een soort van commando line omgeving kom voor die MSDE2000. Weet iemand dat dan toevallig?

  • Buzzman
  • Registratie: Juni 2000
  • Niet online
http://msdn.microsoft.com...qlref/ts_sp_adda_0q7i.asp

tadaa ;)

Ehm.. je kan toch zeker wel ergens een sql connectie openen en zo wat statements uitvoeren? :P

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 11:04

gorgi_19

Kruimeltjes zijn weer op :9

http://www.asp.net/msde/default.aspx

Hier staat ook beschreven (bij puntje 4) hoe je logins aanmaakt in een SQL database voor onder ASP.Net

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • wustenveld
  • Registratie: Februari 2002
  • Laatst online: 08-08 17:31
gelukt! Maar nu geeft ie alleen nog steeds hetzelfde aan: Login failed for user 'EDUARD\sqluser'. Reason: Not associated with a trusted
SQL Server connection.

Of zie ik nu iets over het hoofd, ik heb dat grantlogin, granddbaccess en addrolemember uitgevoerd

  • Buzzman
  • Registratie: Juni 2000
  • Niet online
ok, wat heb je aangemaakt? een NT user, of een db-user?

Als je een db-user hebt aangemaakt, zit er iets fout in je connection string

Als je een nt user hebt aangemaakt, heeft ie niet voldoende rechten.

  • wustenveld
  • Registratie: Februari 2002
  • Laatst online: 08-08 17:31
ik heb beide users nu aangemaakt. Op NT heb ik sqluser en in de db heb ik een login sqluser. Met sp_adduser. Die user is lid van de rollen: db_datawriter en db_datareader. Met sp_adduser heb ik de user EDUARD\sqluser toegevoegd als login in de db. Hieronder staat m'n web.config

<configuration>
<appSettings>
<add key="MM_CONNECTION_HANDLER_testdb" value="sqlserver.htm" />
<add key="MM_CONNECTION_STRING_testdb" value="Persist Security Info=False;Data Source=localhost;Initial Catalog=testdb;User ID=EDUARD\sqluser;Password=sqluser" />
<add key="MM_CONNECTION_DATABASETYPE_testdb" value="SQLServer" />
<add key="MM_CONNECTION_SCHEMA_testdb" value="" />
<add key="MM_CONNECTION_CATALOG_testdb" value="" />
</appSettings>
</configuration>

  • whoami
  • Registratie: December 2000
  • Laatst online: 09:56
Waarom gebruik je als user id
code:
1
EDUARD\sqluser

en niet gewoon sqluser?

https://fgheysels.github.io/


  • wustenveld
  • Registratie: Februari 2002
  • Laatst online: 08-08 17:31
dacht ik ook net aan, ik heb nu gewoon sqluser ingetikt maar krijg nog steeds de melding van Not associated with a trusted SQL Server connection.

  • whoami
  • Registratie: December 2000
  • Laatst online: 09:56
Wanneer krijg je die foutmelding eigenlijk? Bij het openen van de database-connectie?
De connectionstring ziet er imho op 't eerste zicht goed uit...

Draait je MSDE wel?

https://fgheysels.github.io/


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 11:04

gorgi_19

Kruimeltjes zijn weer op :9

http://www.asp.net/Forums...x?tabindex=1&PostID=77279

Hier wordt het probleem ook uitgebreid besproken, met tig oplossingen en verklaringen..
Misschien dat je er wat aan hebt.

Een van de mogelijke oplossingen:
just add the following to the end of your connection string:

conLath = New SqlConnection("server=raj;uid=sa;pwd=;database=techdb;Trusted_Connection=yes")

and it should work, this is the way I solved this problem

Hope it helps, Hooker

[ Voor 48% gewijzigd door gorgi_19 op 09-12-2002 14:29 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • wustenveld
  • Registratie: Februari 2002
  • Laatst online: 08-08 17:31
het heeft geholpen, ik krijg nu die foutmelding niet meer. Ik krijg nu de melding Login failed for user 'sql_user'. Dus ik ben al een stukkie verder.

  • whoami
  • Registratie: December 2000
  • Laatst online: 09:56
wustenveld schreef op 09 December 2002 @ 14:31:
het heeft geholpen, ik krijg nu die foutmelding niet meer. Ik krijg nu de melding Login failed for user 'sql_user'. Dus ik ben al een stukkie verder.


Dan bestaat die user niet, of is het pwd verkeerd....

https://fgheysels.github.io/


  • wustenveld
  • Registratie: Februari 2002
  • Laatst online: 08-08 17:31
Hij doet het.
Even samenvatten:

Eerst de SQL connectie op mixed-mode gezet:
Met rededt32 in \HKLM\Software\Microsoft\MSSQLServer\MSSQLServer de key LoginMode verandert van een 1 naar een 2.

Daarna de db aangemaakt enz:
1) DB aangemaakt met webmatrix
2) met dat osql de login testdb_user aangemaakt
3) met sp_changedbowner heb ik testdb_user eigenaar gemaakt van test_db

En de verbinding kan gemaakt worden!!
Eindelijk heb ik het (na 6 uur) voor elkaar om met dreamweaver een verbinding te krijgen naar SQL. Dan kan ik nu eindelijk een website in elkaar gaan knutselen.

Iedereen bedankt voor de hulp!
Pagina: 1