use*_*618 8 c# sql sql-server-2005 sql-update
我有一张桌子汽车和CarDescriptions
汽车:IDCar(int,PK,autoincrement)carsDesciptions(IDDescription,Header(nvarchar),Content(nvarchar),idCar(int,FK)
在应用程序中,我正在添加汽车并编辑现有汽车.
我的问题:
1.如何保存更改的汽车与数据库中的描述?
我有车的ID,我有ID的描述
类CarDescirption没有像IsChanged这样的任何池,所以
我不想做这样的事情:
如果在表中,则必须更新记录,如果表中不存在则必须插入
use*_*618 12
它具有最好的性能:
UPDATE Table1 SET (...) WHERE Column1='SomeValue'
IF @@ROWCOUNT=0
INSERT INTO Table1 VALUES (...)
Run Code Online (Sandbox Code Playgroud)
可能类似于某些修改的东西会起作用
IF EXISTS (SELECt * FORM carsdescriptions WHERE IDCar = @IDCar )
UPDATE carsdescriptions
SET Header = @Header, Content = @Content
WHERE IDCar = @IDCar
ELSE
INSERT INTO carsdescriptions (IDCar, Header, Content)
VALUES (@IDCar, @Header, @Content)
Run Code Online (Sandbox Code Playgroud)
看看这篇文章,也会给你更多的见解