死锁的形成与避免很早就知道了,但是一直知其然不知其依然,这两天使用语句自己制造死锁与分析,更加深刻的理解死锁的形成。PS:可能有理解有误的地方,希望指出
前期
- SQL语句准备
CREATE TABLE [dbo].[Table_A](
[ID] [int] IDENTITY(1,1) NOT NULL,
[Name] [nvarchar](8) NULL,
CONSTRAINT [PK_Table_A] PRIMARY KEY CLUSTERED
(
[ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
CREATE TABLE [dbo].[Table_B](
[ID] [int] IDENTITY(1,1) NOT NULL,
[Name] [nvarchar](8) NULL,
CONSTRAINT [PK_Table_B] PRIMARY KEY CLUSTERED
(
[ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
insert into [dbo].[Table_A](Name) values('测试数据A');
insert into [dbo].[Table_A](Name) values('测试数据A');
insert into [dbo].[Table_A](