与<的SQL字符串比较或者>

时间:2014-01-06 16:19:48

标签: sql string string-comparison

我正在攻读数据库考试,在我的一个练习中,我应该说明这个数据库是否可以INSERT [...]

CREATE TABLE A (
   a1 INTEGER NOT NULL PRIMARY KEY,
   a2 CHAR(10) NOT NULL,
   a3 CHAR(10) NOT NULL,
   CHECK(a2<a3)
)

最后一位是(a2<a3)是什么意思? 它是一个字符串,所以它比较什么,长度或什么?一些帮助会很棒,谢谢。

1 个答案:

答案 0 :(得分:3)

insert into A values (0, 'a', 'b'); 是可能的

insert into A values (1, 'b', 'a');抛出异常

CHECK(a2 < a3)只允许a2的值在字母表中排在第一位(低于)的插入,与a3相比。

您可以尝试执行select ascii('a');,这样您就可以看到角色的ASCII码(此处:97)。

编辑: 请注意,像A这样的大写字母与小型模式(如

)具有不同的ascii代码

Link to an ASCII-code table