字段长度如何限制

wangchangk 2007-04-04 11:29:52
我现在有个字段的长度设置为8位,我想实现该字段输入时必须是8位并且是数字,怎么实现?就是说少于8位的不允许输入,中间含有非数字的字符也不允许输入,有没有办法设置数据库?
...全文
229 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangdehao 2007-04-04
  • 打赏
  • 举报
回复
create table test(
test varchar(8)
CONSTRAINT CK_test_test check (test like '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]')
)
chuifengde 2007-04-04
  • 打赏
  • 举报
回复
添加一个约束

create table test(a varchar(8) )

alter table test add constraint chid check (a like '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]')
baggio785 2007-04-04
  • 打赏
  • 举报
回复
数值是什么形式的?00000000,有这种形式么?

如果没有,是否可以:
改成int型,然后设置最小值10000000和最大值99999999
rookie_one 2007-04-04
  • 打赏
  • 举报
回复
觉得不应该rtrim,ltrim

应该直接这样:
if len(串) = 8 and isnumeric(串) = 1 then ok
wangchangk 2007-04-04
  • 打赏
  • 举报
回复
我现在不是在程序里面写,程序不是我写的,我只能设置数据库,来限制输入
jacklinchen 2007-04-04
  • 打赏
  • 举报
回复
在数据库表字段设计时好像没办法实现,只能在加入记录时进行判断
dawugui 2007-04-04
  • 打赏
  • 举报
回复
有没有办法设置数据库?好象没有,只能自己写语句判断.
leo_lesley 2007-04-04
  • 打赏
  • 举报
回复
len(columnname)=8 长度=8的
ISNUMERIC ( columnname) =1 非数字
dawugui 2007-04-04
  • 打赏
  • 举报
回复
if len(rtrim(ltrim(串))) = 8 and isnumeric(rtrim(ltrim(串))) = 1 then ok
hxd001_810 2007-04-04
  • 打赏
  • 举报
回复
这应该是放在前台程序去判断

34,593

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧