代码之家  ›  专栏  ›  技术社区  ›  Tim S.

如何基于字段值创建新表?

  •  0
  • Tim S.  · 技术社区  · 10 年前

    (请注意,这些值各不相同,除了下面的C列外,其他值都无所谓)

    Col A |  Col B  | Col C | Col D
    --------------------------------
    aaa   |  xxx    | app1  | somepath1
    bbb   |  yyy    | app1  | somepath2
    ccc   |  zzz    | app2  | somepath3
    ddd   |  www    | app2  | somepath4
    eee   |  vvv    | app3  | somepath5
    

    基本上,我想拆分并创建一个名为“app1”的表,其中包含app1中的所有行,一个称为“app2”的表中包含app2中的所有列,等等。

    我尝试直接编辑SQL并选择一个不同的appname,然后基于它创建一个select,但我尝试的每一件事都会出现错误“字段太小,无法接受您尝试的数据量”。我甚至不知道这意味着什么,因为我所有的字段都是“长文本”,而且大多数情况下数据都不超过200个字符。

    有什么建议吗?谢谢你抽出时间。

    1 回复  |  直到 10 年前
        1
  •  2
  •   Don George    10 年前
    Function split()
    Set db = CurrentDb()
    Set Applist = db.OpenRecordset("select ColC from SourceData group by ColC")
    Applist.MoveFirst
    Do While Not Applist.EOF
        App = Applist.Fields("ColC").Value
        SQL = "select * into [" & App & "] "
        SQL = SQL & " from [SourceData] where ColC='" & App & "'"
        db.Execute (SQL)
        Applist.MoveNext
        Loop
    MsgBox ("Done")
    End Function
    

    注意——这假设ColC的内容是“漂亮的”——例如,没有引号或括号。空间应该可以。

    推荐文章