2012-01-06 44 views

回答

4

你不說出你的DBMS,所以我假定PostgreSQL的

CHECK(name ~ '^[^0-9]*$') 
+0

Oracle語法請...! – 2012-05-29 15:01:25

3

Double negative應該是標準的(雖然不是MySQL的),因爲它使用LIKE:

CHECK(NAME NOT LIKE '%[^a-zA-Z]%') 
+0

這是**不是**標準SQL,因爲標準不支持LIKE的正則表達式。哪個DBMS支持這種語法? – 2012-01-06 12:20:47

+0

SQL Server,sybase。它不是餐廳 – gbn 2012-01-06 12:27:18

+0

「*餐廳*」是什麼意思? (我不是母語的人) – 2012-01-06 12:28:44