Sqlite连接字符串不起作用?

时间:2014-07-14 15:22:37

标签: visual-studio-2010 sqlite web-applications connection-string

我在Visual Studio 2010中使用sqlite数据库创建了Web应用程序,该数据库位于桌面上(连接字符串中的数据源路径指向桌面)。现在我想在我的项目中添加数据库,以便我可以发布它,但是当我更改连接字符串(只是数据库名称)时,它无法看到数据库。

如果有人知道请告诉我这些事情是否常见,我该怎么做才能在项目中添加工作连接字符串的数据库?我错过了什么吗?

以下是连接字符串:

working:data source =“C:\ Documents and Settings .......... \ dbBookStore.db; Version = 3”;

不工作:data source =“dbBookStore.db; Version = 3”; (它说sql错误登录或丢失数据库没有这样的表)

不工作:data source =“〜/ dbBookStore.db; Version = 3”; (它说无法打开数据库文件)

单击“登录”按钮时会抛出错误。

以下是代码:

namespace BookStore
{

public partial class BookStoreMaster : System.Web.UI.MasterPage
{
    string connectionString;

    protected void Page_Load(object sender, EventArgs e)
    {

        connectionString = @"Data Source = dbBookStore.db; Version = 3";
    }
protected void btnLogin_Click(object sender, EventArgs e)
    {

        using (SQLiteConnection con = new SQLiteConnection(connectionString))
        {

            SQLiteCommand com = new SQLiteCommand("select Username, Password from    
            tblUserAccount where Username=@username       
            and Password=@password", con);

            com.Parameters.AddWithValue("username", txtUsername.Text);
            com.Parameters.AddWithValue("password", txtPassword.Text);
            con.Open();
            SQLiteDataAdapter dap = new SQLiteDataAdapter(com);

            System.Data.DataSet ds = new System.Data.DataSet();

            dap.Fill(ds);

            if (ds.Tables[0].Rows.Count == 1)
            {
                Session["username"] = txtUsername.Text;
                Session["password"] = txtPassword.Text;
                Response.Redirect("BooksPage.aspx");
            }

            con.Close();
        }

    }

0 个答案:

没有答案