我有一個包含數據和表格,我需要當我附上文件並加載到我的項目,並添加或更新數據,以便在SQL Server .MDF
數據庫文件在已安裝SQL Server的第二臺PC上運行我的程序,發現數據庫未找到錯誤!使用SQL Server的MDF文件很容易在任何Windows無需任何身份驗證
注1:數據庫是在SQL Server 2012本地主機服務器和Windows身份驗證模式下創建的。
我使用這個代碼加載和使用數據庫:
SqlConnection c = new SqlConnection(@"Data Source=.;Initial Catalog=db1;Integrated Security=True");
private void Form1_Load(object sender, EventArgs e)
{
String str;
SqlConnection myConn = new SqlConnection(@"Data Source=.;Initial Catalog=db1;Integrated Security=True");
str = "CREATE DATABASE db1";
SqlCommand myCommand = new SqlCommand(str, myConn);
try
{
myConn.Open();
myCommand.ExecuteNonQuery();
MessageBox.Show("First db is Created", "MyProgram", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
catch (System.Exception ex)
{
// MessageBox.Show("DB is exist");
}
finally
{
if (myConn.State == ConnectionState.Open)
{
myConn.Close();
}
}
using (SqlConnection con = new SqlConnection(@"Data Source=.;Initial Catalog=db1;Integrated Security=True"))
{
try
{
//Open.the SqlConnection;
con.Open();
//The following code uses a SqlCommand based on the SqlConnection
using (SqlCommand command = new SqlCommand("CREATE TABLE contents(id int IDENTITY(100, 1),Name char(50) NOT NULL,Lastname char(50) NOT NULL,Number char(50) ,Area nvarchar(50) ,Date nvarchar(50)NULL,Duration nvarchar(MAX),description nvarchar(MAX),gender nvarchar(50),number2 nvarchar(50),DT datetime NULL);", con))
command.ExecuteNonQuery();
}
catch (Exception ex)
{
//MessageBox.Show("Tables created");
}
}
}
負載表
private void button4_Click(object sender, EventArgs e)
{
SqlDataAdapter a = new SqlDataAdapter("select * from contents", c);
DataTable t = new DataTable();
a.Fill(t);
dataGridView1.DataSource = t;
dataGridView1.FirstDisplayedScrollingRowIndex = dataGridView1.RowCount - 1;
dataGridView1.AutoResizeColumns();
}
但它不是非常獨特的和有用的數據庫每天都會轉移到另一臺PC,它必須加載完美也我有SQL表中的一些表是靜態的,他們不需要爲他們編碼,我只想用它們作爲資源。另外我聽說過一些嵌入式或本地數據庫可以在應用程序數據文件夾中用作數據庫的方法,並且可以明智地移動應用程序,所以我需要一些幫助。由於
如果你想使用一個'.mdf'文件,你**必須** SQL服務器來訪問它,並使用SQL Server時,你必須** **使用Windows或SQL Server身份驗證 - 你***不能***訪問'.mdf'文件,而無需任何形式的認證.... –
你爲什麼不備份數據庫並在新的PC上恢復。或者如果兩臺PC都在同一個局域網中,直接連接到數據庫。 –