由于包含数据库,安装文件在其他计算机上不起作用

问题描述 投票:0回答:1

我用c#创建了一个简单的Windows应用程序,并向其中添加了简单的数据库(mdf)。它可以正常工作。但是,当我为其创建安装程序并安装它时,另一台计算机无法打开该文件,但在我的计算机上可以正常工作。我该如何解决这个问题?

有人可以帮助我吗?这是我的简单代码:

命名空间TestOfSimpleDatabase{公共局部类Form1:表单{

    SqlConnection con = new SqlConnection("Data Source = (LocalDB)\\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\\Store.mdf;Integrated Security = True");
    public Form1()
    {
        InitializeComponent();
    }


    private void button1_Click(object sender, EventArgs e)
    {
        string dat = "Insert into [Table](Fname,Lname) Values('" + textBox1.Text + "', '" + textBox2.Text + "' )";
        SqlCommand com = new SqlCommand(dat, con);
        con.Open();
        com.ExecuteNonQuery();
        con.Close();
    }

    private void Form1_Load(object sender, EventArgs e)
    {
        // TODO: This line of code loads data into the 'storeDataSet.Table' table. You can move, or remove it, as needed.
        this.tableTableAdapter.Fill(this.storeDataSet.Table);

    }

    private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
    {

    }
}

}

c# setup-project setup-deployment
1个回答
1
投票

我认为您没有在用户计算机上安装SQL Server Engine,在用户计算机上安装SQL Server并将MDF文件附加到它,然后运行程序。

OR,

使用MS-ACCESS数据库而不是SQL Server,它不需要安装到其引擎。这称为嵌入式数据库,应该仅用于少数用户,例如5个用户。但这需要在代码内部的SQL提供程序中进行更改。

© www.soinside.com 2019 - 2024. All rights reserved.