Sql server 将表从SQL Server导出到MS Access

Sql server 将表从SQL Server导出到MS Access,sql-server,ms-access,Sql Server,Ms Access,我正在尝试使用数据导入/导出功能将表从SQL Server导出到MS Access。一切正常,但有两件事: 主键约束未导出到MS Access,甚至未导出到identity属性。理想情况下,我希望country\u id列成为MS access中的AutoNumber/主键列 位列正在MS access中转换为整数。我希望它是一个Yes/No列 有人能帮我吗 这是我的SQL Server代码: CREATE TABLE country ( id_country int IDENTITY

我正在尝试使用数据导入/导出功能将表从SQL Server导出到MS Access。一切正常,但有两件事:

  • 主键约束未导出到MS Access,甚至未导出到identity属性。理想情况下,我希望
    country\u id
    列成为MS access中的
    AutoNumber
    /主键列

  • 列正在MS access中转换为
    整数
    。我希望它是一个
    Yes/No

  • 有人能帮我吗

    这是我的SQL Server代码:

    CREATE TABLE country
    (
        id_country int IDENTITY PRIMARY KEY not null,
        my_tinyint tinyint,
        my_single real,
        my_double float,
        my_bit bit,
        my_char char(7),
        my_longchar text
    );
    

    不能直接使用DDL创建自动编号字段。最好是创建一个主键字段。以下DDL查询适用于我的2013 Access db:

    CREATE TABLE country
     (
       id_country LONG CONSTRAINT PK_id_country PRIMARY KEY,
       my_tinyint integer,
       my_single single,
       my_double double,
       my_bit integer,
       my_char text(7),
       my_longchar memo
     )
    

    但是,这不会创建递增字段。您必须使用DAO或ADOX来处理此问题,或者在Access界面中手动执行此操作。这里有一个SO问题说明了如何执行此操作:

    re:“您不能直接使用DDL创建自动编号字段。”事实上,这不是真的。如果您对[id_country]使用
    计数器
    而不是
    LONG
    ,它将创建一个自动编号字段。我从来不知道这一点。我使用DDL的次数相当多,但最近通过Access摆脱了它。很高兴知道,谢谢!!