iT邦幫忙

0

C#_建立mdf失敗_存取被拒

原本小弟我在WinCE上使用SqlCeEngine都挺好用的
奈何最近專案需要使用PC
於是我查了一下MSDN
以下是代碼

String str;
SqlConnection myConn = new SqlConnection("Server=localhost;Integrated security=SSPI;database=master");

str = "CREATE DATABASE MyDatabase ON PRIMARY " +
"(NAME = MyDatabase_Data, " +
"FILENAME = 'C:\\MyDatabaseData.mdf', " +
"SIZE = 2MB, MAXSIZE = 10MB, FILEGROWTH = 10%)" +
"LOG ON (NAME = MyDatabase_Log, " +
"FILENAME = 'C:\\MyDatabaseLog.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();
                    }
                }

但很不幸的出現
System.Data.SqlClient.SqlException(0x80131904): CREATE FILE於嘗試開啟或建立實體檔案'C:\MyDatabaseData.mdf'時,發現作業系統錯誤 5(存取被拒。)。
CREATE DATABASE失敗。某些列出的檔案名稱無法建立。請檢查相關的錯誤。

我查過很多相關資料
但都無法得到正確解答
懇請各位大大指點迷津


1 則留言

1
dscwferp
iT邦高手 1 級 ‧ 2021-11-25 10:56:30

CREATE FILE於嘗試開啟或建立實體檔案'C:\MyDatabaseData.mdf'時,發現作業系統錯誤 5(存取被拒。)

不要放在C:
請新增一個目錄 比如 DATABASE
然後
FILENAME = 'C:\\DATABASE\\MyDatabaseData.mdf'

真的可以耶,謝謝你

我要留言

立即登入留言