Degeim Skrevet 8. mai 2008 Del Skrevet 8. mai 2008 Hoi! For ikke å få Jørn på nakken lager jeg enda en pen tråd Jeg har til nå arbeidet med en database på internett, men vil flytte over til en lokal database slik at jeg kan arbeide uten nettilgang også. Databasen er laget vha Add=> Database => "Database.mdf". Med den på internett var det bare å skrive: <connectionStrings> <add name="MyDb" connectionString="Data Source=...;Initial Catalog=...;User ID=...;Password=..." providerName="System.Data.SqlClient"/> </connectionStrings > I web.config, og så bruke: using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["MyDb"].ConnectionString)) { conn.Open(); Men hvordan gjør jeg det når den likker lokalt? Har jo ikke laget noe brukernavn eller passord (men vil gjerne det), og er ikke helt sikker på "Initial Catalog" heller. "Data Source" går jeg ut fra skal være localhost. Men hvordan? Fungerer det på en helt annen måte når det er lokalt, kanskje? Lenke til kommentar
j000rn Skrevet 8. mai 2008 Del Skrevet 8. mai 2008 (endret) Siden du bruker SQL Server er det best å bruke Integrated Security. Dvs. at den bruker windows brukeren din , eller brukeren som IIS kjører som for anonyme brukere. connectionstring: Server=.;integrated security=true;database=AndebySite2 eller Server=localhost\mininstans;user id=webuser;password=blah;database=AndebySite2 Server kan være ".", "localhost", "minmaskin", "127.0.0.1", etc.... for default instanser. For named instances putter du bare "\mittinstansnavn" etterpå. F.eks. for SQL Server Express: ".\SQLExpress" Hvis du skal være ekstra tøff kan du også kjøre SQL Server på andre porter enn default (1433): Server=mindatamaskin\mininstans,47806 data source, initial catalog, etc trenger du ikke bry deg om med System.Data.SqlClient.... Endret 8. mai 2008 av jorn79 Lenke til kommentar
Degeim Skrevet 8. mai 2008 Forfatter Del Skrevet 8. mai 2008 (endret) Hm... Fem minutter før svaret kom? Må ikke hvile på laurbær; plutselig kommer noen før deg! <connectionStrings> <add name ="Database" connectionString="Server=.\SQLExpress;Integrated Security=true;Database=Database"/> </connectionStrings > (Prøvde også uten "\SQLExpress") Og kode: using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["Database"].ConnectionString)) { conn.Open(); } Gir: Cannot open database "Database" requested by the login. The login failed. Login failed for user 'ERLEND-X\[Bruker]'. Har også forsøkt med: <connectionStrings> <add name ="Database" connectionString="Server=.\App_Data\SQLExpress;Integrated Security=true;Database=Database"/> </connectionStrings > (Databasen ligger i App_Data) (Prøvde også uten "\SQLExpress") Men da får jeg noe enda skumlere: An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified) (Høres ikke ut som det er riktig fremgangsmåte, nei) Du skriver connectionstring=X "eller: blabla med passord og webuser"; jeg må vel finne meg en knapp et sted, og klikke på den for å legge til passord og brukernavn? Eller har databasen min funnet på å lage seg egne påloggingsopplysninger? EDIT: Mulig jeg ikke forstod det der med named instances helt; kanskje det er der problemet ligger? EDIT2: Ser jeg glemte " providerName="System.Data.SqlClient"", men samme problem kommer selv etter at det er lagt til. Endret 8. mai 2008 av Degeim Lenke til kommentar
j000rn Skrevet 8. mai 2008 Del Skrevet 8. mai 2008 Cannot open database "Database" requested by the login. The login failed. Login failed for user 'ERLEND-X\[Bruker]'. (Databasen ligger i App_Data) (Prøvde også uten "\SQLExpress") Login failed betyr at den har klart å koble seg til serveren, men at du ikke har lagt inn brukeren som Login på SQL Server. Siden databasen ligger i App_Data må du ha med: AttachDbFilename=AppData\AndebySite.mdf Men jeg ville nå heller attachet databasen på vanlig måte i SQL Server Management Studio.... Lenke til kommentar
Degeim Skrevet 8. mai 2008 Forfatter Del Skrevet 8. mai 2008 Ørg, dette var ekkelt. Login failed betyr at den har klart å koble seg til serveren, men at du ikke har lagt inn brukeren som Login på SQL Server. Jeg har jo "Integrated Security=true"; da skal den vel bruke brukeren min? Lenke til kommentar
j000rn Skrevet 8. mai 2008 Del Skrevet 8. mai 2008 Ørg, dette var ekkelt. Login failed betyr at den har klart å koble seg til serveren, men at du ikke har lagt inn brukeren som Login på SQL Server. Jeg har jo "Integrated Security=true"; da skal den vel bruke brukeren min? Har brukeren din tilgang til databasen da? Bruker du Vista? Lenke til kommentar
Degeim Skrevet 8. mai 2008 Forfatter Del Skrevet 8. mai 2008 (endret) Bruker XP. Er pålogget som administrator nå, og alt er likt Endret 8. mai 2008 av Degeim Lenke til kommentar
Degeim Skrevet 9. mai 2008 Forfatter Del Skrevet 9. mai 2008 Huff, nå har jeg prøvd alt! Noen som kunne prøvd å lage en ny ASP.Net-side, koble den til en database og så zippe og laste opp? Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå