看你的是什么的数据库,但基本每一中数据库中都会有一张表里是标记了各数据表的主键的。去这里看看:
http://www.csdn.net/expert/topic/585/585641.xml?temp=.3269617

解决方案 »

  1.   

    那样到是有解决一部分问题,但是如果我不知道联的是什么数据库呢?可能有access,dbase之类的小型数据,那可怎么办呀?我想用ADO中的FIELD中的属性解决,可是不知道怎么做?
    神哪,救救我吧!!
      

  2.   

    用ADO控件Openschma函数可以得到
    ADO控件Openschma函数的使用:
    adoconnection.Openschma(const Schema: TSchemaInfo; const Restrictions: OleVariant; const SchemaID: OleVariant; DataSet: TADODataSet);
    其中:Schema参数是信息的类型,如siColumns,siTables
    DataSet是保存得到的结果集的数据控件
    SchemaID只有在类型为siProviderSpecific时才有用
    Restrictions指定了要操作的对象和返回的结果的格式,是一个数组,什么都不填时是VarArrayOf([unassigned,unassigned,unassigned,unassigned]),否则要根据Schema参数的设定填入相应的值,具体可查帮助。(这个参数的用法弄了好久才搞清楚,:))