diff options
Diffstat (limited to 'dbaccess/source/filter/hsqldb/createparser.cxx')
-rw-r--r-- | dbaccess/source/filter/hsqldb/createparser.cxx | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/dbaccess/source/filter/hsqldb/createparser.cxx b/dbaccess/source/filter/hsqldb/createparser.cxx index de1213945151..9dfe2b2c53d7 100644 --- a/dbaccess/source/filter/hsqldb/createparser.cxx +++ b/dbaccess/source/filter/hsqldb/createparser.cxx @@ -67,10 +67,11 @@ std::vector<OUString> lcl_splitColumnPart(const OUString& sColumnPart) return sReturn; } -sal_Int32 lcl_getAutoIncrementDefault(const OUString& sColumnDef) +sal_Int32 lcl_getAutoIncrementDefault(std::u16string_view sColumnDef) { // TODO what if there are more spaces? - if (sColumnDef.indexOf("GENERATED BY DEFAULT AS IDENTITY") > 0) + size_t nPos = sColumnDef.find(u"GENERATED BY DEFAULT AS IDENTITY"); + if (nPos != std::u16string_view::npos && nPos > 0) { // TODO parse starting sequence stated by "START WITH" return 0; @@ -93,9 +94,15 @@ OUString lcl_getDefaultValue(const OUString& sColumnDef) return OUString{}; } -bool lcl_isNullable(const OUString& sColumnDef) { return sColumnDef.indexOf("NOT NULL") < 0; } +bool lcl_isNullable(std::u16string_view sColumnDef) +{ + return sColumnDef.find(u"NOT NULL") == std::u16string_view::npos; +} -bool lcl_isPrimaryKey(const OUString& sColumnDef) { return sColumnDef.indexOf("PRIMARY KEY") >= 0; } +bool lcl_isPrimaryKey(std::u16string_view sColumnDef) +{ + return sColumnDef.find(u"PRIMARY KEY") != std::u16string_view::npos; +} sal_Int32 lcl_getDataTypeFromHsql(std::u16string_view sTypeName) { |