私はクエリを持っています。私はそれの列として名前とIDを持つデータベーステーブルを持っています。このテーブルには22行の情報があります。Microsoft SQL Serverを使用してテーブル全体をデータベースに保存します
ここで、このデータを取得してUIに表示します。ユーザーは新しい行を追加したり、行を削除したり、テーブルを保存したりすることができます。
ユーザーが[保存]をクリックすると、テーブル全体が既に存在するテーブルに置き換えられます。これはストアドプロシージャを介して実行されます。
最初にデータベーステーブル全体が消去され、新しいエントリが保存されます。
しかし、3-4行を追加して保存すると、データベースが削除されますが、新しく追加された22行+3行がテーブルに更新されないことがあります。
テーブルを簡単に交換する方法を教えてもらえますか?
PS。テーブルには一意のIDはありません。だから私は行を更新することはできません。私はすべてを削除して、新しいテーブルの行を保存する必要があります。
ストアドプロシージャ:
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [DATABASE1].[sp_usertable]
(@in_params AS XML)
AS
BEGIN
DELETE FROM dbo.usertable;
SELECT
T.x.value('./Name[1]','varchar(25)') as [Name] ,
T.x.value('./ID[1]','varchar(6)') as [ID] ,
INTO
#Temp
FROM
@in_params.nodes('/ArrayOfData/Data') as T(x);
BEGIN TRANSACTION
INSERT INTO [dbo].[usertable] (Name, ID)
SELECT Name, ID
FROM #Temp T
COMMIT TRANSACTION
DROP TABLE #Temp;
END
は、このMicrosoft SQL Serverまたは[mysql](http://www.mysql.com/)ですか? –
@ JeffPuckettII- Microsoft SQL Server – Patrick
@patrickテーブル全体を削除する理由は何ですか?なぜ今テーブルの行を挿入/更新/削除するのですか? – Hiten004