| 755 | } |
| 756 | |
| 757 | func getDatabaseInCreateDatabaseStatement(createDatabaseStatement string) (string, error) { |
| 758 | raw := strings.TrimRight(createDatabaseStatement, ";") |
| 759 | raw = strings.TrimPrefix(raw, "CREATE DATABASE") |
| 760 | tokens := strings.Fields(raw) |
| 761 | if len(tokens) == 0 { |
| 762 | return "", errors.Errorf("database name not found") |
| 763 | } |
| 764 | databaseName := strings.TrimLeft(tokens[0], `"`) |
| 765 | databaseName = strings.TrimRight(databaseName, `"`) |
| 766 | return databaseName, nil |
| 767 | } |
| 768 | |
| 769 | // GetCurrentDatabaseOwner gets the role of the current database. |
| 770 | func (d *Driver) GetCurrentDatabaseOwner(ctx context.Context) (string, error) { |