Я пытаюсь использовать следующую хранимую процедуру, и я получаю ошибкухранимых процедур Ошибка арифметического переполнения преобразования выражения к типу данных междунар
Msg 8115, Level 16, State 2, Процедура xlaAFSsp_reports, строка 25
Ошибка арифметического переполнения, преобразующая выражение в тип данных int.Линия 24: тусклый myadapter как новое SqlDataAdapter (МояКоманда)
Линия 25: mycommand.CommandType = CommandType.StoredProcedure
Линия 26: myadapter.fill (DS, "результаты")
Line 27:
Line 28: Rs = ds.tables (0) .rows (0)
значения в таблице не 0
Любая идея, что причины этого?
ALTER PROCEDURE [dbo].[xlaAFSsp_reports]
AS
SET NOCOUNT ON
-- Consolidate disk size (also done on xlaAFSsp_expire_files)
UPDATE xlaAFSstorages
SET currentsize = ISNULL((select SUM(filesize)
from xlaAFSfiles
where s3 = 0
and storageid = xlaAFSstorages.storageid), 0)
create table #ttable (
totalfiles int,
usedspace int,
nonexpiring int,
protected int,
totalusers int,
paidusers int,
totalstorages int,
allocatedspace int,
)
-- Total Stats
insert into #ttable (totalfiles, usedspace, nonexpiring, protected, totalusers, paidusers, totalstorages, allocatedspace)
values (0, 0, 0, 0, 0, 0, 0, 0)
update #ttable
set totalfiles = (Select count(fileid) from xlaAFSfiles),
usedspace = (Select isnull(sum(filesize), 0) from xlaAFSfiles),
nonexpiring = (Select count(fileid) from xlaAFSfiles
where fsid in (select fsid from xlaAFSfilesets
where expiredate = '-')),
protected = (Select count(fileid) from xlaAFSfiles
where fsid in (select fsid from xlaAFSfilesets
where accesspwd <> '')),
totalusers = (Select COUNT(userid) from xlaAFSusers),
paidusers = (Select COUNT(userid) from xlaAFSusers where ispaid <> ''),
totalstorages = (Select COUNT(storageid) from xlaAFSstorages),
allocatedspace = (Select isnull(SUM(allocatedsize),-1)
from xlaAFSstorages)
select * from #ttable
drop table #ttable
И/Или один из полей в xlaAFSstorages не является INT (возможно, NUMERIC, FLOAT или даже * упаси * а VARCHAR) и неявное принуждение вызывает проблему. – MatBailie
Столбец является плавающей точкой, но говорит, что я не могу изменить его, не отбрасывая таблицу. – user1342164
Устанавливает вопрос о том, какой размер файла будет храниться как float ... но можете ли вы изменить тип данных в таблице temp, чтобы вместо этого соответствовать? – Stone