Sql concat运算符中的数据类型varchar和int不兼容
我在过去的两天里一直被卡住执行它给出错误: concat运算符中的数据类型varchar和int不兼容 这是我的桌子:Sql concat运算符中的数据类型varchar和int不兼容,sql,asp.net,sql-server-2008-r2,Sql,Asp.net,Sql Server 2008 R2,我在过去的两天里一直被卡住执行它给出错误: concat运算符中的数据类型varchar和int不兼容 这是我的桌子: create table salestable ( id int identity(1,1) not null primary key, empid char(5), datesold date, monthonly varchar(50), amount money ) 此代码将虚拟记录插入到dbo.salestab
create table salestable
(
id int identity(1,1) not null primary key,
empid char(5),
datesold date,
monthonly varchar(50),
amount money
)
此代码将虚拟记录插入到dbo.salestable
中,以便在salestable中工作,调试并单步执行给出调试和理解代码的代码
declare @outercounter int = 1
declare @innercounter int = 1
while @outercounter <= (select count(name) from namestable)
begin
while @innercounter <= datediff(day, getdate() -datepart(day, getdate()), {fn concat('12/31/',Datepart(year,getdate()))})
begin
insert into salestable (empid, datesold, monthonly, amount)
values (@outercounter,
getdate() - datepart(day, getdate()) + @innercounter,
Datename(month, getdate() - datepart(day, getdate()) + @innercounter),
rand() * 10000)
set @innercounter = @innercounter +1
end
set @outercounter = @outercounter + 1
set @innercounter = 1
end
select * from dbo.salestable
declare@outercounter int=1
声明@innercounter int=1
而@outercounter
试试这个如果答案有效,请将其标记为正确。我用反对票来抵消某人的赞成票,因为第一个版本的格式不好,我们不鼓励使用txtspk。请尽可能仔细地写问题——问题越可读、越详细,你就越有可能得到答案。
fn concat('12/31/',CAST(Datepart(year,getdate()) AS VARCHAR(10)))