IsObjectCaseSensitive returns true if the engine ignores database and table case sensitive.
(instance *InstanceMessage)
| 330 | |
| 331 | // IsObjectCaseSensitive returns true if the engine ignores database and table case sensitive. |
| 332 | func IsObjectCaseSensitive(instance *InstanceMessage) bool { |
| 333 | switch instance.Metadata.GetEngine() { |
| 334 | case storepb.Engine_TIDB: |
| 335 | return false |
| 336 | case storepb.Engine_MYSQL, storepb.Engine_MARIADB, storepb.Engine_OCEANBASE: |
| 337 | return instance.Metadata == nil || instance.Metadata.MysqlLowerCaseTableNames == 0 |
| 338 | case storepb.Engine_MSSQL: |
| 339 | // In fact, SQL Server is possible to create a case-sensitive database and case-insensitive database on one instance. |
| 340 | // https://www.webucator.com/article/how-to-check-case-sensitivity-in-sql-server/ |
| 341 | // But by default, SQL Server is case-insensitive. |
| 342 | return false |
| 343 | default: |
| 344 | return true |
| 345 | } |
| 346 | } |
| 347 | |
| 348 | func (s *Store) obfuscateInstance(ctx context.Context, instance *storepb.Instance) (*storepb.Instance, error) { |
| 349 | secret, err := s.GetAuthSecret(ctx) |
no test coverage detected