有几个问题想请教一下,用VB如何实现如下的功能,数据库为ACCESS
1、删除一个字段后如何把表中的其它记录导回来
2、如何才能把两个字段的位置互换一下
3、access的数据库的时间日期共有7种格式,而无论我设置何种格式,读出来的字段的类型都为7,那么怎样才能区分呢?

解决方案 »

  1.   

    用sql语句可以直接进行上述操作。
      

  2.   

    对于问题1:
        当你删除掉某个字段的话,其它的字段并不受影响,为什么要导回来啊?除非你删除字段的方法有问题,贴出来,我帮你分析。对于问题2:
        为什么要互换两个字段的位置,你在做任何查询的时候都可以将语句中的字段名互换,所以我觉得没有必要互换他们的位置。对于问题3:
        a、你搞混了“格式”和“类型”这两个概念,日期类型的数据返回的数据类型肯定并只能为7,它不可能是其它的数。
        b、你必须要自己明白那个字段用什么格式,在程序中用相同格式的format语句即可。
      

  3.   

    1、删除一个字段后如何把表中的其它记录导回来
    我没明白你是什么意思, 给处下面代码可以导出表 
    如果 令一个表的机构没有,你在建立令一个表的结构,可以用代码实现..
        Do Until rstMain.EOF Or rstMain.BOF
            With rstUser
                .AddNew
                For Each fld In rstMain.Fields
                    If Not (Left(fld.Name, 2) = "s_" Or Left(fld.Name, 4) = "Gen_") Then
                        .Fields(fld.Name).Value = rstMain.Fields(fld.Name).Value
                    End If
                Next
                .Update
            End With
            rstMain.MoveNext
        Loop2、如何才能把两个字段的位置互换一下为什么要互换呢? 
    若想 叫记录集里显示成什么样  建议  select  t1 ,t3,t2,t0 from  aa 3、access的数据库的时间日期共有7种格式,而无论我设置何种格式,读出来的字段的类型都为7,那么怎样才能区分呢?7就代表 时间类型.. 你哪7种叫 时间显示的样式  
    你可以在你库里设定 同一的样式   用个函数...
      

  4.   

    对于第一个问题,本来我是想我先删除一个字段,再添加一个字段,那么该如何保存表的结构和数据呢?互换字段是因为有时间表做起来用了一段时间后觉得位置不太理想,想变动,FORMAT我试一下先
      

  5.   

    1.添加一个字段,其数据可以用update来更新
    2.LZ要明确一点,如果你用VB+ACCESS编程,那么表是用来存放数据的,不是给人看的,字段的位置无关紧要的。
    3.数据类型和格式是二个概念。你可以FORMAT函数格式化日期类型数据。
      

  6.   

    我主要是想对表的结构进行修改,比如先删除一个字段,再添加一个字段,再对一个字段改名等,最后把表的结构和记录都保存下来。
    to  vbman2003(家人) ( ) 信誉:100  2006-02-28 12:28:00  得分: 0  
     
    2.LZ要明确一点,如果你用VB+ACCESS编程,那么表是用来存放数据的,不是给人看的,字段的位
      置无关紧要的
    这点我不赞同,查看一个结构合理清晰的表和一个结构不合理的表,你说对人来讲哪个效率高点?
     
      

  7.   

    增加列:
    ALTER TABLE table1 ADD COLUMN addCol VARCHAR(30)
    删除列:
    ALTER TABLE table1 DROP COLUMN ColName
      

  8.   

    修改列名(用ADOX来做):
    '菜单“工程”-->"引用"-->Microsoft ADO Ext.2.7 for DDL ado Security
    Dim cat As New Catalog
    cat.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\Test.mdb;Jet OLEDB:DataBase password=;"
    cat.Tables("TableName").Columns("oldColName").Name = "NewColName"  '修改列名
      

  9.   

    改变表结构的排列顺序,可以借助临时表来做(导出数据到临时表--->删除源表---->把临时表的名称改为源表的名称):
    select col1,col2,col3,.... into temp from 源表  '创建临时表temp,并导出数据到临时表
    其中的 col1,col2,col3,.... 是你要的列的顺序