2011-07-14 33 views
2

我想創建一個Access表,其中一些字段需要保存結構變量甚至另一個數據表。這是可能的,我將如何做到這一點?我可以在下面創建內存數據表,但不知道如何將其保存/讀取到我的Access MDB。 - (ItemInfo和訂單信息的結構和BOMDatatable是另一個數據表):如何將結構保存到Access數據庫

 dtPackoutPlan = New DataTable 
     With dtPackoutPlan 
      .Columns.Add("OrderNumber", GetType(String)) 
      .Columns.Add("LineNumber", GetType(Integer)) 
      .Columns.Add("ItemNumber", GetType(String)) 
      .Columns.Add("WorkCenter", GetType(String)) 
      .Columns.Add("PromisedShipDate", GetType(Date)) 
      .Columns.Add("PackOutDate", GetType(Date)) 
      .Columns.Add("DeliveryDate", GetType(Date)) 
      .Columns.Add("PackOutSequence", GetType(Integer)) 
      .Columns.Add("Priority", GetType(Integer)) 
      .Columns.Add("Status", GetType(String)) 
      .Columns.Add("OrderedQuantity", GetType(Single)) 
      .Columns.Add("ActualPackOutDate", GetType(Date)) 
      .Columns.Add("ActualPackOutDateString", GetType(String)) 
      .Columns.Add("SplitFlag", GetType(String)) 
      .Columns.Add("ItemInfo", GetType(ItemInfo)) 
      .Columns.Add("BOMDatatable", GetType(DataTable)) 
      .Columns.Add("OrderInfo", GetType(OrderInfo)) 
     End With 
+3

您可能可以使用OLE對象數據來完成此操作。但接下來的問題是爲什麼?爲什麼不把ItemInfo和OrderInfo作爲附加的字段或表?爲什麼你想要做這麼多額外的編碼,當Access將這樣做很好。 –

回答

0

如果你真的不希望將數據保存到其他字段/表(見問題託尼·託斯註釋),你可以只需將整個DataTable序列化爲XMLJSON並將其保存爲備註字段中的字符串。
當然,您不能直接從DataTable查詢值,然後...您必須從Access表中獲取序列化的字符串,然後將其反序列化爲DataTable並從中獲取值。也許這對你來說是一種破壞行爲。

相關問題