2013-11-28 50 views
0

我使用列表视图有它列形式两个不同的数据库表。这里是我的代码,我努力:如何连接两个表并在一个listview中显示它们?

try 
{ 
    String Query = "select id,Code,Description,Rate,Bottles,Supply,Empty,Amount,Received, 
     Customer_New.Opening_Date,Customer_New.Clients_Title,Customer_New.Cust_Id 
     from (Items INNER JOIN Customer_New on Customer_New.Cust_Id=Items.Cust_Id) 
       ,Customer_New"; 
    SQLiteDataAdapter dba = new SQLiteDataAdapter(Query, GlobalVars.conn); 
    DataSet testDs = new DataSet(); 
    dba.Fill(testDs, "Items"); //error 
    dba.Fill(testDs, "Customer_New"); //error 
    DataTable dt = testDs.Tables[0]; 
    this.lvcmodify.DataContext = testDs.Tables[0].DefaultView; 
    lvcmodify.ItemsSource = dt.DefaultView; 
    testDs.Dispose(); 
    dba.Dispose(); 
    dt.Dispose(); 
} 
catch (Exception ex) 
{ 
    MessageBox.Show(ex.ToString()); 
} 

有谁知道我怎么能做到在列表视图此功能? 。

是否有可能在sqlite中将两个表合并到逻辑表中,并在db中进行任何更改,以便我可以在命令中使用该单个表:dba.Fill(testDs,“Items”);? 请帮我解决这个code.Thanks

+0

我可以在这里使用dataTable.Merge()方法吗?如果是,那么我怎么能在这种情况下执行 – user3012262

回答

0

寻找你的源代码后,我认为这个问题是你的SQL包括Customer_New两次

只需卸下最后Customer_New表。

try 
{ 
    Query = "select id,Code,Description,Rate,Bottles,Supply,Empty,Amount,Received, 
     Customer_New.Opening_Date,Customer_New.Clients_Title,Customer_New.Cust_Id 
     from Items INNER JOIN Customer_New on Customer_New.Cust_Id=Items.Cust_Id"; 
    dba = new SQLiteDataAdapter(Query, GlobalVars.conn); 
    testDs = new DataSet(); 
    dba.Fill(testDs, "Items"); 
... 
} 
catch (Exception ex) 
{ 
    MessageBox.Show(ex.ToString()); 
} 
+0

查询创建视图不工作在sqlite数据库...尽管事实上,我的外键选项是在 – user3012262

+0

错误是:SQLiteManager:CREATE VIEW IF NOT EXISTS“main “。”items_v“AS选择ID,代码,描述,费率,瓶子,供应,空,金额,收到, Customer_New.Opening_Date as Opening_Date,Customer_New.Clients_Title as Clients_Title,Customer_New.Cust_Id as Cust_Id from(Items INNER JOIN Customer_New上Customer_New.Cust_Id = Items.Cust_Id) ,Customer_New [不明确的列名:Customer_New.Opening_Date] 异常名称:NS_ERROR_FAILURE 异常消息:组件返回失败代码:0x80004005的(NS_ERROR_FAILURE)[mozIStorageConnection.createStatement] – user3012262

+0

请张贴电子你的第一个查询的错误,我认为你的查询问题,而不是填充函数。 –

相关问题