我需要制定一个约束,该约束能够检查字符串中的每个单词都以大写字母开头,但是这对我来说是如此困难。我已经尝试了不同的方法,但它们不起作用(我也尝试了INITCAP函数,并且该方法不会使字符串成为“ñ”或acent的原因)。我将举一些例子,让您确切地知道我在寻找什么。
"Pepe Román alvarez" -> NOT
"Pepe Román Álvarez" -> YES
"Pepe Román-alvarez" -> NOT
"Pepe Román-Álvarez" -> YES
我已经尝试过正则表达式(CHECK(NOT REGEXP_LIKE(nombre_director,'(^|\W)[a-z]')))
,但是当我尝试插入“ PepeRománÁlvarez”之类的值时,如果可以的话,它不会让它们进入。请你帮助我好吗?这太奇怪了...
[当我说INITCAP不起作用时,我的意思是,例如,当我尝试执行SELECT INITCAP('Ántonio') FROM DUAL;
时,它返回¬ntonio
,因此这意味着它并没有进行转换。 。
检查约束,是-使用initcap
: