Laden...

Fehler beim erstellen von Datenbank (MSSQL 2005)

Erstellt von Ayke vor 14 Jahren Letzter Beitrag vor 14 Jahren 2.269 Views
Ayke Themenstarter:in
643 Beiträge seit 2006
vor 14 Jahren
Fehler beim erstellen von Datenbank (MSSQL 2005)

verwendetes Datenbanksystem: MSSQL 2005

Hallo Leute,

ich versuche eine Datenbank zu erstellen...

            string sqlCreateDBQuery;
            sqlCreateDBQuery = " CREATE DATABASE "
                               + DatabaseName
                               + " ON PRIMARY "
                               + " (NAME = " + DatabaseName + ", "
                               + " FILENAME = '" + FullPath + "', "
                               + " SIZE = 2MB,"
                               + " MAXSIZE = UNLIMITED,"
                               + " FILEGROWTH = 10%) "
                               + " LOG ON (NAME =" + DataLogName + "_Log, "
                               + " FILENAME = '" + DataLogPath + "', "
                               + " SIZE = 1MB, "
                               + " MAXSIZE = 500MB,"
                               + " FILEGROWTH = 10%) ";

            SqlCommand myCommand = new SqlCommand(sqlCreateDBQuery, myConnection);
            try
            {
                myConnection.Open();
                myCommand.ExecuteNonQuery();
                MessageBox.Show("Database has been created successfully!",
                                  "Create Database", MessageBoxButtons.OK,
                                              MessageBoxIcon.Information);
                success = true;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString(), "Create Database Error",
                                            MessageBoxButtons.OK,
                                     MessageBoxIcon.Error);
            }
            finally
            {
                myConnection.Close();
            }

Mein ConnectionString

user id=sa;
password=pass;
server=localhost\INSTANCE;
Trusted_Connection=no;
database=master;
connection timeout=5

Der Wert von sqlCreateDBQuery

 CREATE DATABASE AceTrade_Data ON PRIMARY  
(NAME = AceTrade_Data_Data,  
FILENAME = 'C:\Users\MeinBenutzername\Documents\Visual Studio 2008\Projects\AceTrade\AceTrade\bin\Debug\Database\AceTrade_Data.mdf',  
SIZE = 2MB, 
MAXSIZE = UNLIMITED, 
FILEGROWTH = 10%)  
LOG ON 
(NAME =AceTrade_Data_Log,  
FILENAME = 'C:\Users\MeinBenutzername\Documents\Visual Studio 2008\Projects\AceTrade\AceTrade\bin\Debug\Database\AceTrade_Data_log.ldf',
SIZE = 1MB,  
MAXSIZE = 500MB, 
FILEGROWTH = 10%) 

Leider bekomme ich immer diese Fehlermeldung:

System.Data.SqlClient.SqlException: Fehler bei der Verzeichnissuche für die Datei 'C:\Users\MeinBenutzerName\Documents\Visual Studio 2008\Projects\AceTrade\AceTrade\bin\Debug\Database\AceTrade_Data.mdf'. Betriebssystemfehler 5(Zugriff verweigert).

Fehler bei CREATE DATABASE. Einige angezeigte Dateinamen konnten nicht erstellt werden. Überprüfen Sie zugehörige Fehler.

   bei System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)

   bei System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)

   bei System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)

   bei System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async)

   bei System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)

   bei System.Data.SqlClient.SqlCommand.ExecuteNonQuery()

   bei AceTrade.OptionForm.CreateDatabase(SqlConnection myConnection) in C:\Users\MeinBenutzerName\Documents\Visual Studio 2008\Projects\AceTrade\AceTrade\OptionForm.cs:Zeile 153.

Habe Verzeichnis auf vollzugriff überprüft und meine Anwendung auch als Admin gestartet. Was leuft da schief ?

R
18 Beiträge seit 2006
vor 14 Jahren

Wenn ich mich richtig erinnere, mag es der SQL-Server nicht wenn die Datenbankdatei in einem User Verzeichnis liegt.

Versuch mal als Speicherort für die .mdf Datei "c:\Dokumente und Einstellungen\All Users" anzugeben.

Ayke Themenstarter:in
643 Beiträge seit 2006
vor 14 Jahren

Hallo RambaZamba,

habe ich auch schon versucht geht leider auch nicht. Habe alle möglichen pfade ausprobiert.

130 Beiträge seit 2005
vor 14 Jahren

Check mal, unter welchem Benutzer dein SQL Server läuft und ob der überhaupt Zugriff auf die von dir ausprobierten Pfade hat. Auch schon mal versucht die Datenbank im Standard-Pfad zu erstellen?

Ayke Themenstarter:in
643 Beiträge seit 2006
vor 14 Jahren

Hallo Feuerfalke,

Auch schon mal versucht die Datenbank im Standard-Pfad zu erstellen?

ja habe ich schon versucht und ohne Erfolg. Der Benutzer hat genug Rechte da ich über ein andres Programm eine Datenbank erstellen kann. Habe es mal auf Windows XP gestest, dort funktionert es einwandfrei. Bei Vista jedoch nicht.