Skip to content

Commit 4a3153a

Browse files
committed
Initial commit
0 parents  commit 4a3153a

14 files changed

+819
-0
lines changed

App.config

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<configuration>
3+
<appSettings>
4+
<add key="MsSqlConnectionString" value="Data Source=.;Initial Catalog=LockTest;Integrated Security=True" />
5+
<add key="MySqlConnectionString" value="Server=localhost; Uid=root; Pwd=_pass; Old Guids=true" />
6+
<add key="OracleConnectionString" value="Data Source=(DESCRIPTION = (ADDRESS=(PROTOCOL = TCP)(HOST =localhost)(PORT = 1521))(CONNECT_DATA =(SID =LockTest))); User Id=system;Password=pass" />
7+
<add key="PostgresConnectionString" value="Host=127.0.0.1;Port=5432;Database=LockTest;Pooling=true;userid=testuser;password=pass" />
8+
</appSettings>
9+
<startup>
10+
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
11+
</startup>
12+
<system.data>
13+
<DbProviderFactories>
14+
<remove invariant="MySql.Data.MySqlClient" />
15+
<add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.9.9.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
16+
</DbProviderFactories>
17+
</system.data></configuration>
18+

DDLscripts/MsSql_DDL.sql

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
-- Create database LockTest on your SQL Server and run the following script
2+
3+
4+
ALTER DATABASE LockTest SET ALLOW_SNAPSHOT_ISOLATION ON;
5+
6+
-- To use on existing databases, you might need to switch to single user before setting this option
7+
-- Otherwise the command might hang forever
8+
-- ALTER DATABASE LockTest SET SINGLE_USER WITH ROLLBACK IMMEDIATE; -- switch to single-user and close all other connections
9+
ALTER DATABASE LockTest SET READ_COMMITTED_SNAPSHOT ON;
10+
-- ALTER DATABASE LockTest SET MULTI_USER; -- back to multi-user
11+
12+
Use LockTest;
13+
14+
SET ANSI_NULLS ON
15+
GO
16+
17+
SET QUOTED_IDENTIFIER ON
18+
GO
19+
20+
21+
CREATE TABLE [dbo].[DocHeader](
22+
[DocName] [nvarchar](5) NOT NULL,
23+
[Total] [int] NOT NULL,
24+
PRIMARY KEY NONCLUSTERED
25+
(
26+
[DocName] ASC
27+
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
28+
) ON [PRIMARY]
29+
30+
CREATE TABLE [dbo].[DocDetail](
31+
[DocName] [nvarchar](5) NOT NULL,
32+
[Name] [nchar](5) NOT NULL,
33+
[Value] [int] NOT NULL,
34+
CONSTRAINT [PK_DocDetail] PRIMARY KEY NONCLUSTERED
35+
(
36+
[DocName] ASC,
37+
[Name] ASC
38+
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
39+
) ON [PRIMARY]
40+
41+
GO
42+
43+
ALTER TABLE [dbo].[DocDetail] WITH CHECK ADD CONSTRAINT [FK_DocDetailHeader] FOREIGN KEY([DocName])
44+
REFERENCES [dbo].[DocHeader] ([DocName])
45+
GO
46+
47+
ALTER TABLE [dbo].[DocDetail] CHECK CONSTRAINT [FK_DocDetailHeader]
48+
GO

DDLscripts/MySql_DDL.sql

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
2+
CREATE DATABASE IF NOT EXISTS "lck";
3+
USE "lck";
4+
5+
6+
CREATE TABLE IF NOT EXISTS "docheader" (
7+
"DocName" varchar(5) NOT NULL,
8+
"Total" int(11) NOT NULL,
9+
PRIMARY KEY ("DocName")
10+
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
11+
12+
13+
CREATE TABLE IF NOT EXISTS "docdetail" (
14+
"DocName" varchar(5) NOT NULL,
15+
"Name" varchar(5) NOT NULL,
16+
"Value" int(11) NOT NULL,
17+
PRIMARY KEY ("DocName","Name"),
18+
CONSTRAINT "FK_DocHeader" FOREIGN KEY ("DocName") REFERENCES "docheader" ("DocName")
19+
ON DELETE NO ACTION ON UPDATE NO ACTION
20+
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
21+
22+

DDLscripts/Oracle_DDL.sql

Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
2+
--------------------------------------------------------
3+
-- DDL for Table DOCHEADER
4+
--------------------------------------------------------
5+
6+
CREATE TABLE "SYSTEM"."DOCHEADER"
7+
( "DOCNAME" VARCHAR2(5 BYTE),
8+
"TOTAL" NUMBER
9+
) PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255
10+
NOCOMPRESS LOGGING
11+
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
12+
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
13+
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
14+
TABLESPACE "SYSTEM" ;
15+
--------------------------------------------------------
16+
-- DDL for Index DOCHEADER_PK
17+
--------------------------------------------------------
18+
19+
CREATE UNIQUE INDEX "SYSTEM"."DOCHEADER_PK" ON "SYSTEM"."DOCHEADER" ("DOCNAME")
20+
PCTFREE 10 INITRANS 2 MAXTRANS 255
21+
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
22+
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
23+
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
24+
TABLESPACE "SYSTEM" ;
25+
--------------------------------------------------------
26+
-- Constraints for Table DOCHEADER
27+
--------------------------------------------------------
28+
29+
ALTER TABLE "SYSTEM"."DOCHEADER" ADD CONSTRAINT "DOCHEADER_PK" PRIMARY KEY ("DOCNAME")
30+
USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255
31+
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
32+
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
33+
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
34+
TABLESPACE "SYSTEM" ENABLE;
35+
ALTER TABLE "SYSTEM"."DOCHEADER" MODIFY ("TOTAL" NOT NULL ENABLE);
36+
ALTER TABLE "SYSTEM"."DOCHEADER" MODIFY ("DOCNAME" NOT NULL ENABLE);
37+
--------------------------------------------------------
38+
-- Ref Constraints for Table DOCHEADER
39+
--------------------------------------------------------
40+
41+
ALTER TABLE "SYSTEM"."DOCHEADER" ADD CONSTRAINT "FK_DOCHEADER" FOREIGN KEY ("DOCNAME")
42+
REFERENCES "SYSTEM"."DOCHEADER" ("DOCNAME") ENABLE;
43+
44+
45+
46+
47+
48+
49+
--------------------------------------------------------
50+
-- DDL for Table DOCDETAIL
51+
--------------------------------------------------------
52+
53+
CREATE TABLE "SYSTEM"."DOCDETAIL"
54+
( "DOCNAME" VARCHAR2(5 BYTE),
55+
"NAME" VARCHAR2(5 BYTE),
56+
"VALUE" NUMBER
57+
) PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255
58+
NOCOMPRESS LOGGING
59+
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
60+
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
61+
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
62+
TABLESPACE "SYSTEM" ;
63+
--------------------------------------------------------
64+
-- DDL for Index DOCDETAIL_PK
65+
--------------------------------------------------------
66+
67+
CREATE UNIQUE INDEX "SYSTEM"."DOCDETAIL_PK" ON "SYSTEM"."DOCDETAIL" ("DOCNAME", "NAME")
68+
PCTFREE 10 INITRANS 2 MAXTRANS 255
69+
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
70+
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
71+
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
72+
TABLESPACE "SYSTEM" ;
73+
--------------------------------------------------------
74+
-- Constraints for Table DOCDETAIL
75+
--------------------------------------------------------
76+
77+
ALTER TABLE "SYSTEM"."DOCDETAIL" ADD CONSTRAINT "DOCDETAIL_PK" PRIMARY KEY ("DOCNAME", "NAME")
78+
USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255
79+
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
80+
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
81+
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
82+
TABLESPACE "SYSTEM" ENABLE;
83+
ALTER TABLE "SYSTEM"."DOCDETAIL" MODIFY ("VALUE" NOT NULL ENABLE);
84+
ALTER TABLE "SYSTEM"."DOCDETAIL" MODIFY ("NAME" NOT NULL ENABLE);
85+
ALTER TABLE "SYSTEM"."DOCDETAIL" MODIFY ("DOCNAME" NOT NULL ENABLE);
86+
--------------------------------------------------------
87+
-- Ref Constraints for Table DOCDETAIL
88+
--------------------------------------------------------
89+
90+
ALTER TABLE "SYSTEM"."DOCDETAIL" ADD CONSTRAINT "FK_DOCDETAIL_HEADER" FOREIGN KEY ("DOCNAME")
91+
REFERENCES "SYSTEM"."DOCHEADER" ("DOCNAME") ENABLE;

DDLscripts/Postgres_DDL.sql

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
CREATE SCHEMA lck
2+
AUTHORIZATION postgres;
3+
4+
CREATE TABLE lck."DocHeader" (
5+
"DocName" character varying(5) NOT NULL,
6+
"Total" integer,
7+
CONSTRAINT "PK_DocName" PRIMARY KEY ("DocName")
8+
)
9+
WITH (
10+
OIDS=FALSE
11+
);
12+
ALTER TABLE lck."DocHeader"
13+
OWNER TO postgres;
14+
15+
CREATE TABLE lck."DocDetail" (
16+
"DocName" character varying(5) NOT NULL,
17+
"Name" character varying(5) NOT NULL,
18+
"Value" integer,
19+
CONSTRAINT "PK_DocDetail" PRIMARY KEY ("DocName", "Name"),
20+
CONSTRAINT "FK_DocName" FOREIGN KEY ("DocName")
21+
REFERENCES lck."DocHeader" ("DocName") MATCH SIMPLE
22+
ON UPDATE NO ACTION ON DELETE NO ACTION
23+
)
24+
WITH (
25+
OIDS=FALSE
26+
);
27+
ALTER TABLE lck."DocDetail"
28+
OWNER TO postgres;
29+

0 commit comments

Comments
 (0)