我在程序里得到一个数据库的路径,现在我想用这个路径去代替ODBC数据源中原有DSN里的数据库的路径。请问有什么方法?还有一个问题,我在VC中可以用什么方法修改一个表里字段的属性?

解决方案 »

  1.   

    第一个问题我觉得应该首先删除你原来的DSN,然后再加入你现在需要的DSN.
    SQLConfigDataSource(NULL,ODBC_ADD_DSN,"Microsoft Access Driver (*.mdb)\0",
    "DSN=jiaohuan\0DBQ=c:\\Database\\jiaohuan.mdb\0DEFAULTDIR=c:                      \\Database\0\0");
    这个语句加入了一个名叫jiaohuan的DSN,同时你还需要这样一个头文件
    #include <odbcinst.h>
      

  2.   

    如果要删除DSN的话,直接从注册表中删除就可以,DSN在注册表中的位置是:
    用户DSN:HKEY_CURRENT_USER\Software\ODBC\ODBC.INI下
    系统DSN:HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI下然后调用SQLConfigDataSource创建DSN就可以,也可以直接在注册表中写响应的内容
      

  3.   

    用ADO的Excute执行SQL语句就能改变表字段的属性