sql server varchar 类型默认值 要求 convert(varchar,1000000000000+ID)+convert(varchar,getdate(),112)

fqbnet2050 2009-03-09 05:33:43
想给一个varchar 50 的字段设置一个默认值 要求如下:
用10000000000000000000000+id,后面在连上convert(varchar,getdate(),112),
其中ID是自增的。

每次添加默认值后,表达式前后都自动加上 ‘’ 单引号。

问一下,可以实现这样一个默认值吗
...全文
295 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
dawugui 2009-03-10
  • 打赏
  • 举报
回复
create table tb
(
id1 int identity(1,1),
id2 as '''10000000000000000000000'+ cast(id1 as varchar)+convert(varchar(8),getdate(),112)+'''' ,
val varchar(10)
)
go
insert tb values('a')
insert tb values('b')
insert tb values('c')
go

select * from tb

drop table tb

/*
id1 id2 val
----------- --------------------------------------------------------------- ----------
1 '10000000000000000000000120090310' a
2 '10000000000000000000000220090310' b
3 '10000000000000000000000320090310' c

(所影响的行数为 3 行)
*/


create table tb
(
id1 int identity(1,1),
id2 as '10000000000000000000000'+ cast(id1 as varchar)+convert(varchar(8),getdate(),112) ,
val varchar(10)
)
go
insert tb values('a')
insert tb values('b')
insert tb values('c')
go

select * from tb

drop table tb

/*
id1 id2 val
----------- ------------------------------------------------------------- ----------
1 10000000000000000000000120090310 a
2 10000000000000000000000220090310 b
3 10000000000000000000000320090310 c

(所影响的行数为 3 行)

*/
fqbnet2050 2009-03-10
  • 打赏
  • 举报
回复
其实,我要的是这种,不过还是 多谢大家了
create table tb
(
id1 int identity(1,1),
id2 as cast((convert(bigint,'1000000000000000')+ id1)as varchar)+convert(varchar(8),getdate(),112) ,
val varchar(10)
)
fqbnet2050 2009-03-10
  • 打赏
  • 举报
回复
其实,我要的是这种,不过还是 多谢大家了
create table tb
(
id1 int identity(1,1),
id2 as cast((convert(bigint,'1000000000000000')+ id1)as varchar)+convert(varchar(8),getdate(),112) ,
val varchar(10)
)
fqbnet2050 2009-03-10
  • 打赏
  • 举报
回复
好的,多谢各位了,我试一下
claro 2009-03-10
  • 打赏
  • 举报
回复
帮顶。
hui_hui_2007 2009-03-09
  • 打赏
  • 举报
回复
CREATE TABLE [TABLE1] (
[col1] [int] IDENTITY (1, 1) NOT NULL ,
[col2] AS ('A' + right(('000000' + convert(varchar,[col1])),6)) ,
[col3] [char] (10) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]

insert into table1 (col3)
select 'aaaa' union all
select 'bbbb' union all
select 'cccc'

select *
from table1

col1 col2 col3
----------- ------------- ----------
1 A000001 aaaa
2 A000002 bbbb
3 A000003 cccc

(所影响的行数为 3 行)

col2列可能就是楼主要的。
肥龙上天 2009-03-09
  • 打赏
  • 举报
回复

create table #1(id int identity(1,1),idd as '''10000000000000000000000'+ rtrim(id)+convert(varchar,getdate(),112)+'''' ,col1 varchar(256))
insert #1 values('abc1')
insert #1 values('abc2')
insert #1 values('abc3')

select * from #1

id idd col1
----------- ------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
1 '10000000000000000000000120090309' abc1
2 '10000000000000000000000220090309' abc2
3 '10000000000000000000000320090309' abc3

(3 row(s) affected)


dtxh168 2009-03-09
  • 打赏
  • 举报
回复
create table [tb]
(
id int identity(1,1),
col as '10000000000000000000000'+ltrim(id)+convert(varchar,getdate(),112),
content varchar(20)
)

insert into tb select 'abc'

select * from tb

/**
id col content
----------- ----------------------------------------------------------------- --------------------
1 10000000000000000000000120090309 abc

(所影响的行数为 1 行)
**/

是不是col这样?
htl258_Tony 2009-03-09
  • 打赏
  • 举报
回复
declare @t table (id int identity,fid as '10000000000000000000000'+ltrim(id)+convert(varchar,getdate(),112),col varchar(20))
insert @t select 'abcd'
union all select 'efgh'

select * from @t

id fid col
----------- ----------------------------------------------------------------- --------------------
1 10000000000000000000000120090309 abcd
2 10000000000000000000000220090309 efgh

(所影响的行数为 2 行)
shizheyangde 2009-03-09
  • 打赏
  • 举报
回复
没实现过,帮忙顶
fqbnet2050 2009-03-09
  • 打赏
  • 举报
回复
varchar 类型的不能这样设置默认值?

34,590

社区成员

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

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