Teaper Type Clash: Unericientifier несовместим с INT

Когда я пытаюсь создать хранимую процедуру ниже, я получаю следующую ошибку:

Type Type Clash: UnericiDifier несовместимо с INT

, мне не понятно, что вызывает эту ошибку. UserID на самом деле является Int во всех моих таблицах. Может кто-нибудь сказать мне, что я сделал не так?

create procedure dbo.DeleteUser(@UserID int)
as

    delete from [aspnet_Membership] where UserId = @UserID
    delete from [Subscription] where UserID = @UserID
    delete from [Address] where UserID = @UserID
    delete from [User] where UserID = @UserID

go
18
задан abatishchev 12 September 2011 в 14:54
поделиться

1 ответ

Причина состоит в том, что данные не соответствуют типу данных. Я столкнулся с теми же проблемами, что я забыл делать полевое соответствие. Хотя мой случай не то же как Ваш, но он показывает подобное сообщение об ошибке.

ситуация состоит в том, что я копирую таблицу, но случайно я пишу одно поле c орфографическими ошибками, таким образом, я изменяю его с помощью ALTER после создания базы данных. И порядок полей в обеих таблицах не идентичен. таким образом, когда я использую эти INSERT INTO TableName SELECT * FROM TableName, результат показал подобные ошибки: Operand type clash: datetime is incompatible with uniqueidentifier

Это - simiple пример:

use example
go
create table Test1 (
    id int primary key,
    item uniqueidentifier,
    inserted_at datetime
    )
go
create table Test2 (
    id int primary key,
    inserted_at datetime
    )
go
alter table Test2 add item uniqueidentifier;
go

--insert into Test1 (id, item, inserted_at) values (1, newid(), getdate()), (2, newid(), getdate());


insert into Test2 select * from Test1;

select * from Test1;
select * from Test2;


сообщение об ошибке:

Msg 206, Level 16, State 2, Line 24
Operand type clash: uniqueidentifier is incompatible with datetime
0
ответ дан 30 November 2019 в 08:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: