:Francis: Skrevet 15. juli 2008 Del Skrevet 15. juli 2008 Jeg prøver å opprette en database på maskinen, men får jeg får en feilmelding om at navnet jeg har valgt allerede er i bruk, uansett hva jeg jeg velger som navn. private void CreateDatabase() { databaseName = databaseNameTextBox.Text; String str; SqlConnection myConn = new SqlConnection("Server=FRANCISACER\\SQLEXPRESS;Integrated security=SSPI;database=master"); str = "CREATE DATABASE MyDatabase ON PRIMARY " + "(NAME = " + databaseName + ", " + "FILENAME = 'C:\\" + databaseName + ".mdf', " + "SIZE = 2MB, MAXSIZE = 10MB, FILEGROWTH = 10%) " + "LOG ON (NAME = " + databaseName + ", " + "FILENAME = 'C:\\" + databaseName + ".ldf', " + "SIZE = 1MB, " + "MAXSIZE = 5MB, " + "FILEGROWTH = 10%)"; SqlCommand myCommand = new SqlCommand(str, myConn); try { myConn.Open(); myCommand.ExecuteNonQuery(); MessageBox.Show("DataBase is Created Successfully", "MyProgram", MessageBoxButtons.OK, MessageBoxIcon.Information); } catch (System.Exception ex) { MessageBox.Show(ex.ToString(), "MyProgram", MessageBoxButtons.OK, MessageBoxIcon.Information); } finally { if (myConn.State == ConnectionState.Open) { myConn.Close(); } } } All hjelp mottas med stor takk Mvh Francis Lenke til kommentar
HDSoftware Skrevet 15. juli 2008 Del Skrevet 15. juli 2008 Jeg prøver å opprette en database på maskinen, men får jeg får en feilmelding om at navnet jeg har valgt allerede er i bruk, uansett hva jeg jeg velger som navn. private void CreateDatabase() { databaseName = databaseNameTextBox.Text; String str; SqlConnection myConn = new SqlConnection("Server=FRANCISACER\\SQLEXPRESS;Integrated security=SSPI;database=master"); str = "CREATE DATABASE MyDatabase ON PRIMARY " + "(NAME = " + databaseName + ", " + "FILENAME = 'C:\\" + databaseName + ".mdf', " + "SIZE = 2MB, MAXSIZE = 10MB, FILEGROWTH = 10%) " + "LOG ON (NAME = " + databaseName + ", " + "FILENAME = 'C:\\" + databaseName + ".ldf', " + "SIZE = 1MB, " + "MAXSIZE = 5MB, " + "FILEGROWTH = 10%)"; SqlCommand myCommand = new SqlCommand(str, myConn); try { myConn.Open(); myCommand.ExecuteNonQuery(); MessageBox.Show("DataBase is Created Successfully", "MyProgram", MessageBoxButtons.OK, MessageBoxIcon.Information); } catch (System.Exception ex) { MessageBox.Show(ex.ToString(), "MyProgram", MessageBoxButtons.OK, MessageBoxIcon.Information); } finally { if (myConn.State == ConnectionState.Open) { myConn.Close(); } } } All hjelp mottas med stor takk Mvh Francis Vet ikek om det har noe med saken å gjøre, men har du prøvd å gjøre det på en litt enklere måte? Hva med å droppe den komplekse strengen og si heller noe slik: str = "CREATE DATABASE " + databaseName og ikke noe mer. Alt det andre er vel strengt tatt default, med unntak av plasseringen av filene. Ole Lenke til kommentar
:Francis: Skrevet 15. juli 2008 Forfatter Del Skrevet 15. juli 2008 (endret) Takk! Det gikk, men det er viktig for programmets funksjon at brukeren skal kunne bestemme hvor databasefilene skal lagres. Vet du/dere hvordan jeg kan gjøre det når koden i det første innlegget gir den vedlagte feilmeldingen? Mvh Francis EDIT: Skrivefeil. Endret 15. juli 2008 av :Francis: Lenke til kommentar
HDSoftware Skrevet 15. juli 2008 Del Skrevet 15. juli 2008 Takk! Det gikk, men det er viktig for programmets funksjon at brukeren skal kunne bestemme hvor databasefilene skal lagres. Vet du/dere hvordan jeg kan gjøre det når koden i det første innlegget gir den vedlagte feilmeldingen? Mvh Francis EDIT: Skrivefeil. Bare å legge på parameter for parameter det og se hvor det strander hen. Lenke til kommentar
:Francis: Skrevet 15. juli 2008 Forfatter Del Skrevet 15. juli 2008 Det løste seg, takk for hjelpa Francis Lenke til kommentar
j000rn Skrevet 15. juli 2008 Del Skrevet 15. juli 2008 (endret) Problemet er at du gir datafilen og logfilen samme logiske navn. str = "CREATE DATABASE MyDatabase ON PRIMARY " + "(NAME = " + databaseName + ", " + "FILENAME = 'C:\\" + databaseName + ".mdf', " + "SIZE = 2MB, MAXSIZE = 10MB, FILEGROWTH = 10%) " + "LOG ON (NAME = " + databaseName + "_log, " + "FILENAME = 'C:\\" + databaseName + ".ldf', " + "SIZE = 1MB, " + "MAXSIZE = 5MB, " + "FILEGROWTH = 10%)"; Endret 15. juli 2008 av jorn79 Lenke til kommentar
HDSoftware Skrevet 16. juli 2008 Del Skrevet 16. juli 2008 Problemet er at du gir datafilen og logfilen samme logiske navn. str = "CREATE DATABASE MyDatabase ON PRIMARY " + "(NAME = " + databaseName + ", " + "FILENAME = 'C:\\" + databaseName + ".mdf', " + "SIZE = 2MB, MAXSIZE = 10MB, FILEGROWTH = 10%) " + "LOG ON (NAME = " + databaseName + "_log, " + "FILENAME = 'C:\\" + databaseName + ".ldf', " + "SIZE = 1MB, " + "MAXSIZE = 5MB, " + "FILEGROWTH = 10%)"; Dæven. La ikke merke til dn jeg. Men det høres logisk ut. Flink du Jørn ;-) Lenke til kommentar
j000rn Skrevet 16. juli 2008 Del Skrevet 16. juli 2008 Dæven. La ikke merke til dn jeg. Men det høres logisk ut. Flink du Jørn ;-) Jeg "la ikke merke til det" jeg heller, men det stod jo svart på hvitt i feilmeldingen... 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å