Bug #87741 MySQL.EntityFrameworkCore scaffolding error
Submitted: 12 Sep 2017 14:06 Modified: 14 Oct 2017 11:31
Reporter: Vasu Prasad B Email Updates:
Status: No Feedback Impact on me:
None 
Category:Connector / NET Severity:S2 (Serious)
Version:v8.0.8-dmr OS:Any
Assigned to: Assigned Account CPU Architecture:Any
Tags: EFCore, MySQL, Scaffold-Dbcontext

[12 Sep 2017 14:06] Vasu Prasad B
Description:
Package manager scaffold command:

Scaffold-DbContext "server=localhost;user id=root;password=xxxxxxx;database=DBInfo;port=3306;SslMode=none" MySQL.Data.EntityFrameworkCore -Schemas DBInfo

throwing error: The string argument 'sql' cannot be empty.

How to repeat:
The Target Framework is .Net Core 1.1

Package manager scaffold command on the database:

Scaffold-DbContext "server=localhost;user id=root;password=xxxxxxx;database=DBInfo;port=3306;SslMode=none" MySQL.Data.EntityFrameworkCore -Schemas DBInfo

System.ArgumentException: The string argument 'sql' cannot be empty.
   at Microsoft.EntityFrameworkCore.Utilities.Check.NullButNotEmpty(String value, String parameterName)
   at Microsoft.EntityFrameworkCore.RelationalPropertyBuilderExtensions.HasComputedColumnSql(PropertyBuilder propertyBuilder, String sql)
   at Microsoft.EntityFrameworkCore.Scaffolding.RelationalScaffoldingModelFactory.VisitColumn(EntityTypeBuilder builder, ColumnModel column)
   at Microsoft.EntityFrameworkCore.Scaffolding.RelationalScaffoldingModelFactory.VisitColumns(EntityTypeBuilder builder, ICollection`1 columns)
   at Microsoft.EntityFrameworkCore.Scaffolding.RelationalScaffoldingModelFactory.VisitTable(ModelBuilder modelBuilder, TableModel table)
   at Microsoft.EntityFrameworkCore.Scaffolding.RelationalScaffoldingModelFactory.VisitTables(ModelBuilder modelBuilder, ICollection`1 tables)
   at Microsoft.EntityFrameworkCore.Scaffolding.RelationalScaffoldingModelFactory.VisitDatabaseModel(ModelBuilder modelBuilder, DatabaseModel databaseModel)
   at Microsoft.EntityFrameworkCore.Scaffolding.RelationalScaffoldingModelFactory.CreateFromDatabaseModel(DatabaseModel databaseModel)
   at MySql.Data.EntityFrameworkCore.Design.Internal.MySQLScaffoldingModelFactory.Create(String connectionString, TableSelectionSet tableSelectionSet)
   at Microsoft.EntityFrameworkCore.Scaffolding.Internal.ReverseEngineeringGenerator.GetMetadataModel(ReverseEngineeringConfiguration configuration)
   at Microsoft.EntityFrameworkCore.Scaffolding.Internal.ReverseEngineeringGenerator.GenerateAsync(ReverseEngineeringConfiguration configuration, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.Design.Internal.DatabaseOperations.ScaffoldContextAsync(String provider, String connectionString, String outputDir, String dbContextClassName, IEnumerable`1 schemas, IEnumerable`1 tables, Boolean useDataAnnotations, Boolean overwriteFiles, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.Design.OperationExecutor.<ScaffoldContextImpl>d__22.MoveNext()
   at System.Collections.Generic.EnumerableHelpers.ToArray[T](IEnumerable`1 source, Int32& length)
   at System.Collections.Generic.EnumerableHelpers.ToArray[T](IEnumerable`1 source)
   at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
   at Microsoft.EntityFrameworkCore.Design.OperationExecutor.OperationBase.<>c__DisplayClass4_0`1.<Execute>b__0()
   at Microsoft.EntityFrameworkCore.Design.OperationExecutor.OperationBase.Execute(Action action)
The string argument 'sql' cannot be empty.
[14 Sep 2017 11:31] Chiranjeevi Battula
Hello Vasu,

Thank you for the report.
Could you please provide repeatable test case (exact steps/sample project, connection string,create tables statements etc. - please make it as private if you prefer) to confirm this issue at our end?

Thanks,
Chiranjeevi.
[15 Oct 2017 1:00] Bugs System
No feedback was provided for this bug for over a month, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".