首页 > 解决方案 > 如何检查 VARCHAR 中的第一个字母是否始终是字母

问题描述

我是 sql 新手,在创建表时,有没有办法可以检查/强制第一个字母始终是字母?例如。<alphabet><numbers>

例如,

CREATE TABLE TESTING
(
    TestID VARCHAR(6),
    CONSTRAINT TestPK PRIMARY KEY (TestID)
);

向表中插入新数据时TESTING,应该是,如果输入例如,则T12345提示错误?12345

我有几个表,其中每个表都有自己的 ID(6 位数字),因此,我认为给它们一个字母前缀会更容易(例如,如果它是一个 Customer 表,它将是C 等),以便我可以以更清晰的方式可视化我的表/内容......因此使用的数据类型是 VARCHAR,因为它是一个字母数字值,而不是我最初使用的 INT。

标签: sqloraclevarchar

解决方案


这是为了添加到 MTO 的答案中。我不认为你想做的甚至是必要的。号码没问题。为什么?

您为您的列选择了一个好的命名约定 - <entity name>ID。因此,当您查看查询结果时,您将有一列TestID。那是Test表中的 id。

使用您已经在使用的命名约定解决了问题。


推荐阅读