none
ADO.NET Entity Framework使用DB2问题 RRS feed

  • 问题

  • 大家好,

    正在用ADO.NET Entity Framework 4连接DB2 9.7数据库,创建完.edmx文件之后,想要将表添加到.edmx文件里面,但是添加不了。

    在DB2的数据库中,为了区分大小写,我使用了像"Abc"(表名或列名中包含双引号、大小写)这样的表名和列名。

    不知道要怎么解决了~

    希望有朋友能帮帮忙啊!!!


    Glitter's Question
    2011年12月26日 16:21

答案

  • Hi Glitter,

    这个我可能真帮不了你了,我从来没有用过DB2,为啥修改表名后会变成“表名”。像我前面的Post说的那样,其实你不需要去修改Database,直接改界面也是可以的,你试试看吧。 像这个问题,你还是要到DB2那边问,祝你好运。


    Alan Chen[MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2011年12月27日 7:27
    版主
  • Hi Glitter,

    您的问题搞定了没有?

    Have a nice day.


    Alan Chen[MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.


    没有~和IBM的工程师讨论过了,应该是EF对DB2的支持不太好,没办法了,只有想其它办法解决了


    Glitter's Question
    2012年1月2日 6:55

全部回复

  • Hi Glitter,

    说实话,我没有用过DB2数据库,不确定EF对DB2是否有很好的支持,我发现描述:http://publib.boulder.ibm.com/infocenter/db2luw/v9r7/index.jsp?topic=%2Fcom.ibm.swg.im.dbclient.adonet.doc%2Fdoc%2Fc0054118.html

    你可以根据向导去连接数据库(相应的provider),如果你新建了一个空白的EDMX, 你可以右击界面--》Update Model From Database

    谢谢理解!


    Alan Chen[MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2011年12月27日 6:37
    版主
  • Hi Glitter,

    说实话,我没有用过DB2数据库,不确定EF对DB2是否有很好的支持,我发现描述:http://publib.boulder.ibm.com/infocenter/db2luw/v9r7/index.jsp?topic=%2Fcom.ibm.swg.im.dbclient.adonet.doc%2Fdoc%2Fc0054118.html

    你可以根据向导去连接数据库(相应的provider),如果你新建了一个空白的EDMX, 你可以右击界面--》Update Model From Database

    谢谢理解!


    Alan Chen[MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.


    Hi Alan,

    可能我没表述清楚,我新建了一个空白的EDMX,可以添加一般的DB2中表,这些表所有的表名和列名都是默认使用大写,没有使用像"Abc"这种的命名方式,一旦使用了像"Abc"这样的命名方式之后,这些表是添加不到EDMX文件中的~

    不知道是provider有问题还是EF对DB2的支持不太好。如果是provider有问题的话,应该连数据库中的表都无法显示

    目前我也正在咨询IBM的工程师,希望有解决的方法

    谢谢


    Glitter's Question
    2011年12月27日 7:09
  • Hi Glitter,

    如果表名和列名都是大写的情况,是可以在EDMX中显示的,对不对? 但是你想用Camel的方式来命名你的实体?如果是这样的话,你直接在EDMX上修改就可以了,因为界面上的东西是CSDL,当你保存的时候,EF会自动去修改C-S mapping。

    》》一旦使用了像"Abc"这样的命名方式之后,这些表是添加不到EDMX文件中的

    还是不太清楚你这句话,你是去修改Database?还是像我上面说的那样?

    谢谢


    Alan Chen[MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2011年12月27日 7:14
    版主
  • Hi Glitter,

    如果表名和列名都是大写的情况,是可以在EDMX中显示的,对不对? 但是你想用Camel的方式来命名你的实体?如果是这样的话,你直接在EDMX上修改就可以了,因为界面上的东西是CSDL,当你保存的时候,EF会自动去修改C-S mapping。

    》》一旦使用了像"Abc"这样的命名方式之后,这些表是添加不到EDMX文件中的

    还是不太清楚你这句话,你是去修改Database?还是像我上面说的那样?

    谢谢


    Alan Chen[MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.


    Hi Alan,

    可能还是没表述清楚,我是去修改数据库的,在数据库中表名和列名都是像"Abc"这样,上截图

    这个图是在DB2控制中心里面看到的表

    下面这个是VS里面看的表

    在其中,表名和列名中是包含双引号的,这个就是问题所在


    Glitter's Question
    2011年12月27日 7:22
  • Hi Glitter,

    这个我可能真帮不了你了,我从来没有用过DB2,为啥修改表名后会变成“表名”。像我前面的Post说的那样,其实你不需要去修改Database,直接改界面也是可以的,你试试看吧。 像这个问题,你还是要到DB2那边问,祝你好运。


    Alan Chen[MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2011年12月27日 7:27
    版主
  • Hi Glitter,

    这个我可能真帮不了你了,我从来没有用过DB2,为啥修改表名后会变成“表名”。像我前面的Post说的那样,其实你不需要去修改Database,直接改界面也是可以的,你试试看吧。 像这个问题,你还是要到DB2那边问,祝你好运。


    Alan Chen[MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.


    因为我们在DB2数据库中必须有大小写区分的表名和列名,所以实在是没办法。

    再问一下,怎么使用EF的对象模型反向创建数据表到DB2中?

     

    谢谢


    Glitter's Question
    2011年12月27日 7:47
  • Hi Glitter,

    我敢肯定的是EF肯定能在SQL Server中反向创建数据表,但是不确定DB2。 反向创建的步骤:

    1.Add Entities in EDMX designer

    2.右击EDMX---》Generate Database From Model

    3.Generate T-SQL and run the command.

    ---Done----

    Have a nice day.


    Alan Chen[MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2011年12月28日 6:37
    版主
  • Hi Glitter,

    我敢肯定的是EF肯定能在SQL Server中反向创建数据表,但是不确定DB2。 反向创建的步骤:

    1.Add Entities in EDMX designer

    2.右击EDMX---》Generate Database From Model

    3.Generate T-SQL and run the command.

    ---Done----

    Have a nice day.


    Alan Chen[MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.


    谢谢~
    Glitter's Question
    2012年1月2日 6:51
  • Hi Glitter,

    您的问题搞定了没有?

    Have a nice day.


    Alan Chen[MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2012年1月2日 6:52
    版主
  • Hi Glitter,

    您的问题搞定了没有?

    Have a nice day.


    Alan Chen[MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.


    没有~和IBM的工程师讨论过了,应该是EF对DB2的支持不太好,没办法了,只有想其它办法解决了


    Glitter's Question
    2012年1月2日 6:55
  • Hi Glitter,

    嗯,那我把您的Post关掉咯,谢谢理解~

    Have a nice day.


    Alan Chen[MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2012年1月2日 6:58
    版主
  • Hi Glitter,

    嗯,那我把您的Post关掉咯,谢谢理解~

    Have a nice day.


    Alan Chen[MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.


    能不能再帮个忙啊?身边有没有用EF和DB2做项目的朋友啊?介绍介绍呗~讨论一下!

    谢谢哈~


    Glitter's Question
    2012年1月2日 7:01
  • Hi Glitter,

    我们这边都是用的微软的产品,没有DB2的环境。我是一直在support EF的,还真没有别的朋友用在DB2上用EF。我建议你可以试试别的ORM的框架,谢谢理解。

    Have a nice day.


    Alan Chen[MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2012年1月2日 7:07
    版主
  • Hi Glitter,

    我们这边都是用的微软的产品,没有DB2的环境。我是一直在support EF的,还真没有别的朋友用在DB2上用EF。我建议你可以试试别的ORM的框架,谢谢理解。

    Have a nice day.


    Alan Chen[MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.


    好的,谢谢你!认识你很高兴~!
    Glitter's Question
    2012年1月2日 11:42