This project has moved. For the latest updates, please go here.

DB First Error

Dec 31, 2015 at 4:36 AM
I been working on getting the DB first to work with my access (mdb) file. I've accomplished all of steps and the new provider comes up in the Entity Data Model Wizard. However, when I click through the wizard, I get an error when I try to go to the "choose your database objects and settings" step. I have already worked through the MSysRelationships issue and have the security set on my database properly. Any help would be appreciated. I am using VS 2015 Community Edition. If you need any other information just let me know.

Error:

An error occurred while connecting to the database. The database might be unavailable. An exception of type 'System.Data.Entity.Core.ProviderIncompatibleException' occurred. The error message is: 'The store data provider failed to return information for the StoreSchemaDefinition request. See the inner exception for details.

The inner exception caught was of type 'System.ArgumentException', with this error message: 'Unknown db information 'StoreSchemaDefinition'.

Parameter name: informationType'.'.

Coordinator
Jan 3, 2016 at 2:14 PM
The error is raised in JetProviderManifest line 120.
I used rarely (actually never) DB First and the EF always asked for StoreSchemaDefinitionVersion3.
I think that StoreSchemaDefinition is compatible with it so you could fix it returning the same value i.e. adding
if (informationType == DbProviderManifest.StoreSchemaDefinition)
    return GetStoreSchemaDescription();
At the end, could you please tell me if it works (so I add it to the main code).

Thanks,
Umberto
Feb 2, 2016 at 10:40 PM
I tried what you suggested, and it got further, but I now have a new error. Any ideas?

An error occurred while connecting to the database. The database might be unavailable. An exception of type 'System.Data.Entity.Core.ProviderIncompatibleException' occurred. The error message is: 'Schema specified is not valid. Errors: StoreSchemaDefinition(175,6) : error 0040: The Type nvarchar(max) is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(176,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(177,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(178,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(185,6) : error 0040: The Type nvarchar(max) is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(186,6) : error 0040: The Type nvarchar(max) is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(187,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(190,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(195,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(196,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(197,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(198,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(199,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(200,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(204,6) : error 0040: The Type nvarchar(max) is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(211,6) : error 0040: The Type nvarchar(max) is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(212,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(213,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(214,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(215,6) : error 0040: The Type nvarchar(max) is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(223,6) : error 0040: The Type nvarchar(max) is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(224,6) : error 0040: The Type nvarchar(max) is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(225,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(228,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(233,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(234,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(235,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(236,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(237,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(238,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(242,6) : error 0040: The Type nvarchar(max) is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(249,6) : error 0040: The Type nvarchar(max) is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(250,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(251,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(252,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(253,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(258,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(259,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(260,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(261,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(262,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(263,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(275,6) : error 0040: The Type nvarchar(max) is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(276,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(277,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(278,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(285,6) : error 0040: The Type nvarchar(max) is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(286,6) : error 0040: The Type nvarchar(max) is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(287,6) : error 0040: The Type nvarchar(max) is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(289,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(294,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(295,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(296,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(297,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(298,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(299,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(301,6) : error 0040: The Type nvarchar is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(302,6) : error 0040: The Type nvarchar(max) is not qualified with a namespace or alias. Only primitive types can be used without qualification.

StoreSchemaDefinition(309,6) : err..... too long to paste entire error in this post, but same error continues to repeat.
Feb 14, 2016 at 6:04 PM
I've done some additional testing with both a mdb and accdb Access file. I've also tried both 'EF Designer from database' and 'Code First from database' in the Entity Data Model Wizard. All have the same issue as above where it errors with the nvarchar and nvarchar(max) errors in StoreSchemaDefinition. Any ideas?
Coordinator
Feb 24, 2016 at 9:34 AM
Actually I can't make DB First work at all. I think is related to EF provider registration or 32/64 bit but I'm not sure. Probably I need to change something in xml files but I can't help you untill I restart from a new Windows installation.
Apr 14, 2016 at 4:20 PM
Hi There,

I'm getting exactly the same issue to. Did you make any progress?

Cheers
Jason.