@@ -244,10 +244,14 @@ private class StaticDialectMappingWrapper : IMapping
244
244
{
245
245
private readonly IMapping _mapping ;
246
246
247
- public StaticDialectMappingWrapper ( IMapping mapping )
247
+ public StaticDialectMappingWrapper ( IMapping mapping ) : this ( mapping , mapping . Dialect )
248
+ {
249
+ }
250
+
251
+ public StaticDialectMappingWrapper ( IMapping mapping , Dialect . Dialect dialect )
248
252
{
249
253
_mapping = mapping ;
250
- Dialect = mapping . Dialect ;
254
+ Dialect = dialect ;
251
255
}
252
256
253
257
public IType GetIdentifierType ( string className )
@@ -939,11 +943,12 @@ public string[] GenerateSchemaCreationScript(Dialect.Dialect dialect)
939
943
940
944
var script = new List < string > ( ) ;
941
945
946
+ var staticDialectMapping = new StaticDialectMappingWrapper ( mapping , dialect ) ;
942
947
foreach ( var table in TableMappings )
943
948
{
944
949
if ( table . IsPhysicalTable && IncludeAction ( table . SchemaActions , SchemaAction . Export ) )
945
950
{
946
- script . Add ( table . SqlCreateString ( dialect , mapping , defaultCatalog , defaultSchema ) ) ;
951
+ script . Add ( table . SqlCreateString ( dialect , staticDialectMapping , defaultCatalog , defaultSchema ) ) ;
947
952
script . AddRange ( table . SqlCommentStrings ( dialect , defaultCatalog , defaultSchema ) ) ;
948
953
}
949
954
}
@@ -956,7 +961,7 @@ public string[] GenerateSchemaCreationScript(Dialect.Dialect dialect)
956
961
{
957
962
foreach ( var uk in table . UniqueKeyIterator )
958
963
{
959
- string constraintString = uk . SqlCreateString ( dialect , mapping , defaultCatalog , defaultSchema ) ;
964
+ string constraintString = uk . SqlCreateString ( dialect , staticDialectMapping , defaultCatalog , defaultSchema ) ;
960
965
if ( constraintString != null )
961
966
{
962
967
script . Add ( constraintString ) ;
@@ -966,7 +971,7 @@ public string[] GenerateSchemaCreationScript(Dialect.Dialect dialect)
966
971
967
972
foreach ( var index in table . IndexIterator )
968
973
{
969
- script . Add ( index . SqlCreateString ( dialect , mapping , defaultCatalog , defaultSchema ) ) ;
974
+ script . Add ( index . SqlCreateString ( dialect , staticDialectMapping , defaultCatalog , defaultSchema ) ) ;
970
975
}
971
976
972
977
if ( dialect . SupportsForeignKeyConstraintInAlterTable )
@@ -975,7 +980,7 @@ public string[] GenerateSchemaCreationScript(Dialect.Dialect dialect)
975
980
{
976
981
if ( fk . IsGenerated ( dialect ) && IncludeAction ( fk . ReferencedTable . SchemaActions , SchemaAction . Export ) )
977
982
{
978
- script . Add ( fk . SqlCreateString ( dialect , mapping , defaultCatalog , defaultSchema ) ) ;
983
+ script . Add ( fk . SqlCreateString ( dialect , staticDialectMapping , defaultCatalog , defaultSchema ) ) ;
979
984
}
980
985
}
981
986
}
@@ -992,7 +997,7 @@ public string[] GenerateSchemaCreationScript(Dialect.Dialect dialect)
992
997
{
993
998
if ( auxDbObj . AppliesToDialect ( dialect ) )
994
999
{
995
- script . Add ( auxDbObj . SqlCreateString ( dialect , mapping , defaultCatalog , defaultSchema ) ) ;
1000
+ script . Add ( auxDbObj . SqlCreateString ( dialect , staticDialectMapping , defaultCatalog , defaultSchema ) ) ;
996
1001
}
997
1002
}
998
1003
@@ -2363,6 +2368,7 @@ public string[] GenerateSchemaUpdateScript(Dialect.Dialect dialect, IDatabaseMet
2363
2368
var defaultSchema = GetQuotedDefaultSchema ( dialect ) ;
2364
2369
2365
2370
var script = new List < string > ( 50 ) ;
2371
+ var staticDialectMapping = new StaticDialectMappingWrapper ( mapping , dialect ) ;
2366
2372
foreach ( var table in TableMappings )
2367
2373
{
2368
2374
if ( table . IsPhysicalTable && IncludeAction ( table . SchemaActions , SchemaAction . Update ) )
@@ -2371,11 +2377,11 @@ public string[] GenerateSchemaUpdateScript(Dialect.Dialect dialect, IDatabaseMet
2371
2377
table . Catalog ?? defaultCatalog , table . IsQuoted ) ;
2372
2378
if ( tableInfo == null )
2373
2379
{
2374
- script . Add ( table . SqlCreateString ( dialect , mapping , defaultCatalog , defaultSchema ) ) ;
2380
+ script . Add ( table . SqlCreateString ( dialect , staticDialectMapping , defaultCatalog , defaultSchema ) ) ;
2375
2381
}
2376
2382
else
2377
2383
{
2378
- string [ ] alterDDL = table . SqlAlterStrings ( dialect , mapping , tableInfo , defaultCatalog , defaultSchema ) ;
2384
+ string [ ] alterDDL = table . SqlAlterStrings ( dialect , staticDialectMapping , tableInfo , defaultCatalog , defaultSchema ) ;
2379
2385
script . AddRange ( alterDDL ) ;
2380
2386
}
2381
2387
@@ -2403,7 +2409,7 @@ public string[] GenerateSchemaUpdateScript(Dialect.Dialect dialect, IDatabaseMet
2403
2409
&& ( ! ( dialect is MySQLDialect ) || tableInfo . GetIndexMetadata ( fk . Name ) == null ) ) ;
2404
2410
if ( create )
2405
2411
{
2406
- script . Add ( fk . SqlCreateString ( dialect , mapping , defaultCatalog , defaultSchema ) ) ;
2412
+ script . Add ( fk . SqlCreateString ( dialect , staticDialectMapping , defaultCatalog , defaultSchema ) ) ;
2407
2413
}
2408
2414
}
2409
2415
}
@@ -2413,7 +2419,7 @@ public string[] GenerateSchemaUpdateScript(Dialect.Dialect dialect, IDatabaseMet
2413
2419
{
2414
2420
if ( tableInfo == null || tableInfo . GetIndexMetadata ( index . Name ) == null )
2415
2421
{
2416
- script . Add ( index . SqlCreateString ( dialect , mapping , defaultCatalog , defaultSchema ) ) ;
2422
+ script . Add ( index . SqlCreateString ( dialect , staticDialectMapping , defaultCatalog , defaultSchema ) ) ;
2417
2423
}
2418
2424
}
2419
2425
}
@@ -2439,6 +2445,7 @@ public void ValidateSchema(Dialect.Dialect dialect, IDatabaseMetadata databaseMe
2439
2445
{
2440
2446
SecondPassCompile ( ) ;
2441
2447
2448
+ var staticDialectMapping = new StaticDialectMappingWrapper ( mapping , dialect ) ;
2442
2449
var defaultCatalog = GetQuotedDefaultCatalog ( dialect ) ;
2443
2450
var defaultSchema = GetQuotedDefaultSchema ( dialect ) ;
2444
2451
@@ -2465,7 +2472,7 @@ public void ValidateSchema(Dialect.Dialect dialect, IDatabaseMetadata databaseMe
2465
2472
}
2466
2473
else
2467
2474
{
2468
- validationErrors . AddRange ( table . ValidateColumns ( dialect , mapping , tableInfo ) ) ;
2475
+ validationErrors . AddRange ( table . ValidateColumns ( dialect , staticDialectMapping , tableInfo ) ) ;
2469
2476
}
2470
2477
}
2471
2478
}
0 commit comments