关于sql里userID字段的约束 50
自动生成要求取4位年,2位月,再一个4位流水序号如2009050001,2009050002等,字段约束该怎么写写个函数吧放在userID字段上前六位取当前的年月后四位自...
自动生成 要求取4位年,2位月,再一个4位流水序号
如2009050001,2009050002等,字段约束该怎么写
写个函数吧 放在userID字段上
前六位取当前的年月后四位自动增长 从0001开始 展开
如2009050001,2009050002等,字段约束该怎么写
写个函数吧 放在userID字段上
前六位取当前的年月后四位自动增长 从0001开始 展开
3个回答
展开全部
自己看,计算机要自己动手才能学到
创建与删除SQL约束或字段约束。
SQL约束控制
1)禁止所有表约束的SQL
select 'alter table '+name+' nocheck constraint all' fromwhere type='U'
2)删除所有表数据的SQL
select 'TRUNCATE TABLE '+name from sysobjects '
3)恢复所有表约束的SQL
select 'alter table '+name+' check constraint all' from type='U'
4)删除某字段的约束
declare @name varchar(100)
--DF为约束名称前缀
selectb.name from syscolumns a,sysobjects b where a.id=object_id('表名') and b.id=a.cdefault '字段名' and b.name like 'DF%'
--删除约束
alter table 表名 drop constraint @name
为字段添加新默认值和约束
ALTER TABLE 表名 ADD CONSTRAINT @name DEFAULT (0) FOR [
对字段约束进行更改
--删除约束
ALTER TABLE tablename
Drop CONSTRAINT 约束名
--修改表中已经存在的列的属性(不包括约束,但可以为主键或递增或唯一)
ALTER column 列名 int not null
--添加列的约束
ALTER TABLE tablename
ADD CONSTRAINT DF_tablename_列名 DEFAULT(0) FOR 列名
--添加范围约束
alter table tablename ('M','F'))
posted on 2006-11-17 17:17 北飘阅读(101) 评论(0) 编辑 收藏引用网摘所属分类: SQLServer与Oracle
刷新评论列表
标题
姓名
主页
请输入验证码 验证码 *
内容(请不要发表任何与政治相关的内容) 请输入评论内容
Remember Me?
登录 使用高级评论 新用户注册 返回页首 恢复上次提交
[使用Ctrl+Enter键可以直接提交]
相关文章:
SQL将以字符','分隔的字段值,循环插入表中
SQL语句导入/导出EXCEL(转载自:白袜子blog)
利用SQL语句查找某数据库中所有存储过程包含的内容
将SQL查询分组后获得的结果中的某字段按照条件相加
用SQL语句批量生成一个表的INSERT语句
表数据删除后,使自动增长列重新编号
SQL用一个表的数据更新另一个表的数据
不错的SQL2005学习站点
SQL Server 2005中的T-SQL增强 转载:www.CHINAHTML.COM 学习
SQL获取某表的索引或约束,并确定索引归属列,获取表中的自动增长列名。
创建与删除SQL约束或字段约束。
SQL约束控制
1)禁止所有表约束的SQL
select 'alter table '+name+' nocheck constraint all' fromwhere type='U'
2)删除所有表数据的SQL
select 'TRUNCATE TABLE '+name from sysobjects '
3)恢复所有表约束的SQL
select 'alter table '+name+' check constraint all' from type='U'
4)删除某字段的约束
declare @name varchar(100)
--DF为约束名称前缀
selectb.name from syscolumns a,sysobjects b where a.id=object_id('表名') and b.id=a.cdefault '字段名' and b.name like 'DF%'
--删除约束
alter table 表名 drop constraint @name
为字段添加新默认值和约束
ALTER TABLE 表名 ADD CONSTRAINT @name DEFAULT (0) FOR [
对字段约束进行更改
--删除约束
ALTER TABLE tablename
Drop CONSTRAINT 约束名
--修改表中已经存在的列的属性(不包括约束,但可以为主键或递增或唯一)
ALTER column 列名 int not null
--添加列的约束
ALTER TABLE tablename
ADD CONSTRAINT DF_tablename_列名 DEFAULT(0) FOR 列名
--添加范围约束
alter table tablename ('M','F'))
posted on 2006-11-17 17:17 北飘阅读(101) 评论(0) 编辑 收藏引用网摘所属分类: SQLServer与Oracle
刷新评论列表
标题
姓名
主页
请输入验证码 验证码 *
内容(请不要发表任何与政治相关的内容) 请输入评论内容
Remember Me?
登录 使用高级评论 新用户注册 返回页首 恢复上次提交
[使用Ctrl+Enter键可以直接提交]
相关文章:
SQL将以字符','分隔的字段值,循环插入表中
SQL语句导入/导出EXCEL(转载自:白袜子blog)
利用SQL语句查找某数据库中所有存储过程包含的内容
将SQL查询分组后获得的结果中的某字段按照条件相加
用SQL语句批量生成一个表的INSERT语句
表数据删除后,使自动增长列重新编号
SQL用一个表的数据更新另一个表的数据
不错的SQL2005学习站点
SQL Server 2005中的T-SQL增强 转载:www.CHINAHTML.COM 学习
SQL获取某表的索引或约束,并确定索引归属列,获取表中的自动增长列名。
展开全部
思路是自动生成的四位数加上日期,日期格式是4位年份加上2位月份
创建序列 CREATE SEQUENCE DATE_SEQ
START WITH 1 )
INCREMENT BY 1
MAXVALUE 9999
NO CYCLE
ORDER
插入语句
INSERT INTO 表名(userid)
VALUES(TO_CHAR(SYSDATE,'YYYYMM')||LPAD(TO_CHAR(DATE_SEQ.NEXTVAL),4,'0');
创建序列 CREATE SEQUENCE DATE_SEQ
START WITH 1 )
INCREMENT BY 1
MAXVALUE 9999
NO CYCLE
ORDER
插入语句
INSERT INTO 表名(userid)
VALUES(TO_CHAR(SYSDATE,'YYYYMM')||LPAD(TO_CHAR(DATE_SEQ.NEXTVAL),4,'0');
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
麻烦你写清楚点...
你这个自动生成是自增长还是什么,还有取4位年和2位月是自动取...
你这个自动生成是自增长还是什么,还有取4位年和2位月是自动取...
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询