如何从访问表中获取/创建SQL语句以放入Postgres DB

时间:2015-10-15 17:21:12

标签: sql postgresql ms-access

我目前有一个访问数据库。基本上我要做的就是从访问数据库中取出所有表格并将它们放在postgres数据库中。

现在我可以为每个表写出一个sql语句,或者在postgres中手动创建每个表。但我想知道是否有一个程序或一个用于访问的插件,这将有助于加快这一过程。

以下是我正在寻找的那种sql语句。

CREATE TABLE public.Dept
(
  Deptid integer NOT NULL,
  DeptName text,
  SupDeptid integer,
  CONSTRAINT Dept_pkey PRIMARY KEY (Deptid)
)
WITH (
  OIDS=FALSE
);
ALTER TABLE public.Dept
  OWNER TO postgres;

我很遗憾没有找到任何在google或stackoverflow上做这样的事情的运气。

  • OS x64 Windows 7
  • Postgres x64
  • 办公室(访问)x32

1 个答案:

答案 0 :(得分:1)

我找到了一种快速简便的方法。

简单的一步一步

  1. 在ODBC数据源管理器中创建DSN(确保其为a 系统DSN不是用户)
  2. 打开Access数据库。
  3. 右键单击要导出的表格。
  4. 在出现的选项列表中,选择导出> ODBC数据库
  5. 选择计算机数据源并选择您创建的DSN。
  6. 如果您拥有x32 Ms-Access和x64操作系统,则访问权限将仅显示在odbcad32(x32数据源)中输入的DSN,这不是默认情况下控制面板将您带到的位置。要添加x32 DSN,您必须进入C:\ windows \ SysWOW64 \ odbcad32.exe并在那里重新创建它。

    再次确保它是系统DSN,否则在尝试导出文件时会出现访问错误。

    要更具体地回答问题的标题,您现在可以打开PgAdmin进入导出表的数据库,postgres将显示创建表的SQL语句。