如何在sql中编写代码以避免在插入时出现重复记录 [英] How to write code in sql to avoid duplicate records while inserting
问题描述
我不太了解sql所以请帮助我,我需要在sql中插入表时避免重复记录
以下是我的代码
ALTER程序[dbo]。[sp_InsertBankName]
(
@bankname as varchar(50)
,@ banknamea as nvarchar(50)
)
as
开始
声明@bankid为varchar(10)
select @ bankid = isnull(max(convert(int,bankid)),0)+1来自bankname
插入到bankname
(bankid,bankname,banknamea)
值(@ bankid,@ bankname,@ banknamea)
end
表 bankname ,
将 BankId 设为 PrimaryKey 和 AutoIncreament
然后写查询...
ALTER procedure [dbo]。[sp_InsertBankN ame]
(
@ bankname as varchar ( 50 )
, @ banknamea as nvarchar ( 50 )
)
as
begin
插入 到 bankname(bankname,banknamea)
值( @ bankname , @ banknamea )
结束
快乐编码!
:)
ALTER procedure [dbo]。[sp_InsertBankName]
(
@ bankname as varchar ( 50 )
, @ banknamea as nvarchar ( 50 )
)
as
开始
IF EXISTS ( SELECT bankid FROM bankname WHERE BankName = bankname)
AS BEGIN
< ; return any = message = >
END
ELSE
BEGIN
声明 @ bankid as varchar ( 10 )
选择 @ bankid = isnull(max( convert ( int ,bankid)) , 0 )+ 1 来自 bankname
insert into bankname
(bankid,bankname,banknamea)
值 ( @ bankid , @ bankname , @ banknamea )
END
end< / return>
u ca尝试类似的东西
DECLARE @ Count int
SELECT < span class =code-sdkkeyword> @ Count = Count(AutoID) FROM UserTable WHERE UserName = @ userName
IF @Count = 0
BEGIN
INSERT INTO UserTable(UserName) VALUES ( @ userName )
END
Hi, I am a not much aware of sql so please help me ,I need to avoid duplicate records while inserting a table in sql
Here is my code below
ALTER procedure [dbo].[sp_InsertBankName]
(
@bankname as varchar(50)
,@banknamea as nvarchar(50)
)
as
begin
declare @bankid as varchar(10)
select @bankid=isnull(max(convert(int,bankid)),0)+1 from bankname
insert into bankname
(bankid,bankname,banknamea)
values (@bankid,@bankname,@banknamea)
end
In Table bankname ,
set BankId as PrimaryKey And AutoIncreament
then write query...
ALTER procedure [dbo].[sp_InsertBankName] ( @bankname as varchar(50) ,@banknamea as nvarchar(50) ) as begin insert into bankname (bankname,banknamea) values(@bankname,@banknamea) end
Happy Coding!
:)
ALTER procedure [dbo].[sp_InsertBankName] ( @bankname as varchar(50) ,@banknamea as nvarchar(50) ) as begin IF EXISTS(SELECT bankid FROM bankname WHERE BankName=bankname ) AS BEGIN <return any="" message=""> END ELSE BEGIN declare @bankid as varchar(10) select @bankid=isnull(max(convert(int,bankid)),0)+1 from bankname insert into bankname (bankid,bankname,banknamea) values (@bankid,@bankname,@banknamea) END end</return>
u can try something similar to this
DECLARE @Count int SELECT @Count = Count(AutoID) FROM UserTable WHERE UserName = @userName IF @Count = 0 BEGIN INSERT INTO UserTable (UserName) VALUES (@userName) END
这篇关于如何在sql中编写代码以避免在插入时出现重复记录的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!