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

How to get/create SQL statement from access table to put in Postgres DB

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

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

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

1
2
3
4
5
6
7
8
9
10
11
12
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


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

一步一步简单

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

    再次确保它是系统DSN,或者在尝试导出文件时您将从访问中获得错误。

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