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