Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve database reverse engineering #896

Merged
merged 8 commits into from
Oct 27, 2019

Conversation

lauxjpn
Copy link
Collaborator

@lauxjpn lauxjpn commented Oct 24, 2019

Add support to reverse engineer views.
Add comments for tables and columns.
Improve handling of default values.
Handle the CURRENT_TIMESTAMP default value for timestamp columns correctly.
Correctly implement CURRENT_TIMESTAMP with ON UPDATE clauses.
Introduce a workaround for the missing EF Core handling of ValueGenerated.OnUpdate.

Fixes #877
Fixes #867
Fixes #703
Fixes parts of #792 (others are blocked by an EF Core issue)

Add comments for tables and columns.
Improve handling of default values.
@lauxjpn lauxjpn added this to the 3.0.0 milestone Oct 24, 2019
@lauxjpn lauxjpn self-assigned this Oct 24, 2019
Introduce a workaround for the missing EF Core handling of `ValueGenerated.OnUpdate`.
Fixes PomeloFoundation#877
@mguinness
Copy link
Collaborator

There was an issue previously where TINYINT(3) UNSIGNED would end up mapped to System.SByte instead of System.Byte discussed at #394 (comment).

The workaround was to use a regular expression to strip away the display width which your PR removes.

The orginal upstream type mapping code in CreateMappingFromStoreType now appears to be in ParseStoreTypeName.

Can probably remove this code as it only applies to Release Candidate not General Availability versions.

https://bugs.mysql.com/bug.php?id=89793

>The NON_UNIQUE column in the INFORMATION_SCHEMA.STATISTICS table had
type BIGINT prior to MySQL 8.0, but became VARCHAR in MySQL 8.0 with
the introduction of the data dictionary. The NON_UNIQUE column now
has an integer type again (INT because the column need not be as
large as BIGINT).
@lauxjpn
Copy link
Collaborator Author

lauxjpn commented Oct 24, 2019

Thanks for pointing out the regression and doing the research on the method to override!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment