' Created 7/24/2005 ' Modified 7/24/2005 ' Project ' Model ' Company ' Author ' Version ' Database Access 2000 '======================================================= '=== MS Access 2000 database creation method '=== '=== 1. Create a new database in the MS Access 2000 '=== 2. Create a new module '=== 3. Copy the CASE Studio 2 output SQL script into the new MS Access 2000 module '=== 4. Select from main menu "Tools" item "References..." and check the "Microsoft DAO 3.6 Object Library." '=== 5. Place your mouse cursor somewhere in the main procedure Main() '=== 6. Run the module code (Click the "Run Sub/UserForm" button or press F5) '======================================================= Public dbs As DAO.Database Public tdf As DAO.TableDef Public idx As DAO.Index Public rel As DAO.Relation Sub Main() Set dbs = CurrentDb() On Error GoTo ErrorHandler Call DropTables Call DropIndexes Call CreateTables Call CreatePrimaryKeys Call CreateIndexes Call CreateAlterKeys MsgBox "Script successfully processed.", vbInformation Exit Sub ErrorHandler: Select Case Err.Number Case 3010 MsgBox "Table " & tdf.Name & " allready exist!", vbInformation Err.Clear Case 3284 MsgBox "Index " & idx.Name & " for table " & tdf.Name & " allready exist!", vbInformation Err.Clear Case Else MsgBox Err.Description, vbCritical End Select End Sub ' Drop indexes '============== Sub DropIndexes() 'Drop all non unique indexes End Sub ' Drop tables '=============== Public Sub DropTables() 'Drop relations Call DropRelation("FK_D07_05_D07_01") Call DropRelation("FK_D08_D07_01") Call DropRelation("FK_D06_08_D06_01") Call DropRelation("FK_D04_04_D04_01") Call DropRelation("FK_D04_06_D04_01") Call DropRelation("FK_D04_08_D04_01") Call DropRelation("FK_D06_04_D04_01") Call DropRelation("FK_D07_05_D04_01") Call DropRelation("FK_D01_03_D01") Call DropRelation("FK_D01_04_D01") Call DropRelation("FK_D01_06_D01") Call DropRelation("FK_D01_10_D01") Call DropRelation("FK_D01_11_D01") Call DropRelation("FK_D02_D01") Call DropRelation("FK_D03_D01") Call DropRelation("FK_D04_01_D01") Call DropRelation("FK_D04_02_D01") Call DropRelation("FK_D04_03_D01") Call DropRelation("FK_D04_04_D01") Call DropRelation("FK_D04_06_D01") Call DropRelation("FK_D04_08_D01") Call DropRelation("FK_D04_10_D01") Call DropRelation("FK_D04_11_D01") Call DropRelation("FK_D04_13_D01") Call DropRelation("FK_D04_16_D01") Call DropRelation("FK_D04_17_D01") Call DropRelation("FK_D05_D01") Call DropRelation("FK_D06_D01") Call DropRelation("FK_D07_D01") Call DropRelation("FK_D09_D01") 'Drop tables Call DropTable( "D09" ) Call DropTable( "D08" ) Call DropTable( "D07_05" ) Call DropTable( "D07" ) Call DropTable( "D06_08" ) Call DropTable( "D06_04" ) Call DropTable( "D06" ) Call DropTable( "D05" ) Call DropTable( "D04_17" ) Call DropTable( "D04_16" ) Call DropTable( "D04_13" ) Call DropTable( "D04_11" ) Call DropTable( "D04_10" ) Call DropTable( "D04_08" ) Call DropTable( "D04_06" ) Call DropTable( "D04_04" ) Call DropTable( "D04_03" ) Call DropTable( "D04_02" ) Call DropTable( "D04_01" ) Call DropTable( "D03" ) Call DropTable( "D02" ) Call DropTable( "D01_11" ) Call DropTable( "D01_10" ) Call DropTable( "D01_06" ) Call DropTable( "D01_04" ) Call DropTable( "D01_03" ) Call DropTable( "D01" ) End Sub ' Create tables '=============== Sub CreateTables() Call CreateTable1 'D01 Call CreateTable2 'D01_03 Call CreateTable3 'D01_04 Call CreateTable4 'D01_06 Call CreateTable5 'D01_10 Call CreateTable6 'D01_11 Call CreateTable7 'D02 Call CreateTable8 'D03 Call CreateTable9 'D04_01 Call CreateTable10 'D04_02 Call CreateTable11 'D04_03 Call CreateTable12 'D04_04 Call CreateTable13 'D04_06 Call CreateTable14 'D04_08 Call CreateTable15 'D04_10 Call CreateTable16 'D04_11 Call CreateTable17 'D04_13 Call CreateTable18 'D04_16 Call CreateTable19 'D04_17 Call CreateTable20 'D05 Call CreateTable21 'D06 Call CreateTable22 'D06_04 Call CreateTable23 'D06_08 Call CreateTable24 'D07 Call CreateTable25 'D07_05 Call CreateTable26 'D08 Call CreateTable27 'D09 End Sub '=== Create table D01 ====== Sub CreateTable1() Set tdf = dbs.CreateTableDef( "D01" ) Call AddFieldToTable("pk_D01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D01_01", dbText, 15, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D01_02", dbText, 50, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D01_05", dbLong, 0, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D01_07", dbText, 30, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D01_08", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D01_09", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D01_19", dbLong, 0, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D01_20", dbLong, 0, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D01_21", dbText, 10, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D01_03 ====== Sub CreateTable2() Set tdf = dbs.CreateTableDef( "D01_03" ) Call AddFieldToTable("pk_D01_03", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D01_03", dbText, 2, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D01_04 ====== Sub CreateTable3() Set tdf = dbs.CreateTableDef( "D01_04" ) Call AddFieldToTable("pk_D01_04", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D01_04", dbText, 5, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D01_06 ====== Sub CreateTable4() Set tdf = dbs.CreateTableDef( "D01_06" ) Call AddFieldToTable("pk_D01_06", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D01_06", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D01_10 ====== Sub CreateTable5() Set tdf = dbs.CreateTableDef( "D01_10" ) Call AddFieldToTable("pk_D01_10", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D01_10", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D01_12", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D01_13", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D01_14", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D01_15", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D01_16", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D01_17", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D01_18", dbLong, 0, 0, "", "", "", FALSE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D01_11 ====== Sub CreateTable6() Set tdf = dbs.CreateTableDef( "D01_11" ) Call AddFieldToTable("pk_D01_11", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D01_11", dbText, 50, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D02 ====== Sub CreateTable7() Set tdf = dbs.CreateTableDef( "D02" ) Call AddFieldToTable("pk_D02", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D02_01", dbText, 20, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D02_02", dbText, 20, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D02_03", dbText, 20, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D02_04", dbText, 30, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D02_05", dbText, 30, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D02_06", dbText, 3, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D02_07", dbText, 10, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D02_08", dbText, 10, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D02_09", dbText, 10, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D02_10", dbText, 100, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D02_11", dbText, 100, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D03 ====== Sub CreateTable8() Set tdf = dbs.CreateTableDef( "D03" ) Call AddFieldToTable("pk_D03", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D03_01", dbText, 20, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D03_02", dbText, 20, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D03_03", dbText, 20, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D03_04", dbText, 30, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D03_05", dbText, 30, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D03_06", dbText, 3, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D03_07", dbText, 10, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D03_08", dbText, 10, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D03_09", dbText, 10, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D03_10", dbLong, 0, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D03_11", dbText, 100, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D04_01 ====== Sub CreateTable9() Set tdf = dbs.CreateTableDef( "D04_01" ) Call AddFieldToTable("pk_D04_01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D04_01", dbText, 30, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D04_02 ====== Sub CreateTable10() Set tdf = dbs.CreateTableDef( "D04_02" ) Call AddFieldToTable("pk_D04_02", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D04_02", dbText, 30, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D04_03 ====== Sub CreateTable11() Set tdf = dbs.CreateTableDef( "D04_03" ) Call AddFieldToTable("pk_D04_03", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D04_03", dbText, 30, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D04_04 ====== Sub CreateTable12() Set tdf = dbs.CreateTableDef( "D04_04" ) Call AddFieldToTable("pk_D04_04", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D04_04", dbText, 30, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D04_01", dbLong, 0, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D04_06 ====== Sub CreateTable13() Set tdf = dbs.CreateTableDef( "D04_06" ) Call AddFieldToTable("pk_D04_06", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D04_06", dbText, 30, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D04_01", dbLong, 0, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D04_08 ====== Sub CreateTable14() Set tdf = dbs.CreateTableDef( "D04_08" ) Call AddFieldToTable("pk_D04_08", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D04_08", dbText, 30, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D04_01", dbLong, 0, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D04_10 ====== Sub CreateTable15() Set tdf = dbs.CreateTableDef( "D04_10" ) Call AddFieldToTable("pk_D04_10", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D04_10", dbText, 30, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D04_11 ====== Sub CreateTable16() Set tdf = dbs.CreateTableDef( "D04_11" ) Call AddFieldToTable("pk_D04_11", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D04_11", dbText, 50, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D04_12", dbText, 30, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D04_13 ====== Sub CreateTable17() Set tdf = dbs.CreateTableDef( "D04_13" ) Call AddFieldToTable("pk_D04_13", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D04_13", dbText, 50, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D04_14", dbText, 30, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D04_15", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D04_16 ====== Sub CreateTable18() Set tdf = dbs.CreateTableDef( "D04_16" ) Call AddFieldToTable("pk_D04_16", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D04_16", dbText, 100, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D04_17 ====== Sub CreateTable19() Set tdf = dbs.CreateTableDef( "D04_17" ) Call AddFieldToTable("pk_D04_17", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D04_17", dbText, 50, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D05 ====== Sub CreateTable20() Set tdf = dbs.CreateTableDef( "D05" ) Call AddFieldToTable("pk_D05", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D05_01", dbText, 50, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D05_02", dbText, 50, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D05_03", dbText, 30, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("Lat", dbText, 10, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("Long", dbText, 10, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D05_05", dbText, 30, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D05_06", dbText, 30, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D05_07", dbText, 3, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D05_08", dbText, 10, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D05_09", dbText, 10, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D06 ====== Sub CreateTable21() Set tdf = dbs.CreateTableDef( "D06" ) Call AddFieldToTable("pk_D06_01", dbText, 50, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D06_03", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D06_06", dbCurrency, 0, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D06_07", dbLong, 0, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D06_04 ====== Sub CreateTable22() Set tdf = dbs.CreateTableDef( "D06_04" ) Call AddFieldToTable("pk_D06_04", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D06_01", dbText, 50, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D04_01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D06_05", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D06_08 ====== Sub CreateTable23() Set tdf = dbs.CreateTableDef( "D06_08" ) Call AddFieldToTable("pk_D06_08", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D06_01", dbText, 50, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D06_08", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D06_09", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D06_10", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D07 ====== Sub CreateTable24() Set tdf = dbs.CreateTableDef( "D07" ) Call AddFieldToTable("pk_D07_01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D07_02", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D07_03", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D07_04", dbDate, 0, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D07_05 ====== Sub CreateTable25() Set tdf = dbs.CreateTableDef( "D07_05" ) Call AddFieldToTable("pk_D07_05", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D07_01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D04_01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D07_06", dbDate, 0, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D08 ====== Sub CreateTable26() Set tdf = dbs.CreateTableDef( "D08" ) Call AddFieldToTable("pk_D08", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D07_01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D08_01", dbText, 20, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D08_02", dbText, 20, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D08_03", dbText, 20, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D08_04", dbText, 30, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D08_05", dbText, 30, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D08_06", dbText, 3, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D08_07", dbText, 10, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D08_08", dbText, 10, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D08_09", dbText, 10, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D08_10", dbText, 100, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D08_11", dbDate, 0, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D08_12", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D08_13", dbLong, 0, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D08_14", dbLong, 0, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("fk_D04_01", dbLong, 0, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D08_16", dbLong, 0, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D08_17", dbDate, 0, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D08_18", dbDate, 0, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D08_19", dbLong, 0, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D08_20", dbDate, 0, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub '=== Create table D09 ====== Sub CreateTable27() Set tdf = dbs.CreateTableDef( "D09" ) Call AddFieldToTable("pk_D09", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("fk_D01", dbLong, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D09_01", dbText, 50, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("D09_02", dbText, 50, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D09_03", dbText, 50, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D09_04", dbText, 50, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("D09_05", dbDate, 0, 0, "", "", "", FALSE, FALSE ) Call AddFieldToTable("Status", dbText, 1, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Created_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) Call AddFieldToTable("Update_Date", dbDate, 0, 0, "", "", "", TRUE, FALSE ) dbs.TableDefs.Append tdf End Sub ' Create primary keys '===================== Sub CreatePrimaryKeys() '=== Create primary key for table D01 ====== Set tdf = dbs.TableDefs( "D01" ) Set idx = tdf.CreateIndex( "PK_D01" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D01", False ) tdf.Indexes.Append idx '=== Create primary key for table D01_03 ====== Set tdf = dbs.TableDefs( "D01_03" ) Set idx = tdf.CreateIndex( "PK_D01_03" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D01_03", False ) tdf.Indexes.Append idx '=== Create primary key for table D01_04 ====== Set tdf = dbs.TableDefs( "D01_04" ) Set idx = tdf.CreateIndex( "PK_D01_04" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D01_04", False ) tdf.Indexes.Append idx '=== Create primary key for table D01_06 ====== Set tdf = dbs.TableDefs( "D01_06" ) Set idx = tdf.CreateIndex( "PK_D01_06" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D01_06", False ) tdf.Indexes.Append idx '=== Create primary key for table D01_10 ====== Set tdf = dbs.TableDefs( "D01_10" ) Set idx = tdf.CreateIndex( "PK_D01_10" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D01_10", False ) tdf.Indexes.Append idx '=== Create primary key for table D01_11 ====== Set tdf = dbs.TableDefs( "D01_11" ) Set idx = tdf.CreateIndex( "PK_D01_11" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D01_11", False ) tdf.Indexes.Append idx '=== Create primary key for table D02 ====== Set tdf = dbs.TableDefs( "D02" ) Set idx = tdf.CreateIndex( "PK_D02" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D02", False ) tdf.Indexes.Append idx '=== Create primary key for table D03 ====== Set tdf = dbs.TableDefs( "D03" ) Set idx = tdf.CreateIndex( "PK_D03" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D03", False ) tdf.Indexes.Append idx '=== Create primary key for table D04_01 ====== Set tdf = dbs.TableDefs( "D04_01" ) Set idx = tdf.CreateIndex( "PK_D04_01" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D04_01", False ) tdf.Indexes.Append idx '=== Create primary key for table D04_02 ====== Set tdf = dbs.TableDefs( "D04_02" ) Set idx = tdf.CreateIndex( "PK_D04_02" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D04_02", False ) tdf.Indexes.Append idx '=== Create primary key for table D04_03 ====== Set tdf = dbs.TableDefs( "D04_03" ) Set idx = tdf.CreateIndex( "PK_D04_03" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D04_03", False ) tdf.Indexes.Append idx '=== Create primary key for table D04_04 ====== Set tdf = dbs.TableDefs( "D04_04" ) Set idx = tdf.CreateIndex( "PK_D04_04" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D04_04", False ) tdf.Indexes.Append idx '=== Create primary key for table D04_06 ====== Set tdf = dbs.TableDefs( "D04_06" ) Set idx = tdf.CreateIndex( "PK_D04_06" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D04_06", False ) tdf.Indexes.Append idx '=== Create primary key for table D04_08 ====== Set tdf = dbs.TableDefs( "D04_08" ) Set idx = tdf.CreateIndex( "PK_D04_08" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D04_08", False ) tdf.Indexes.Append idx '=== Create primary key for table D04_10 ====== Set tdf = dbs.TableDefs( "D04_10" ) Set idx = tdf.CreateIndex( "PK_D04_10" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D04_10", False ) tdf.Indexes.Append idx '=== Create primary key for table D04_11 ====== Set tdf = dbs.TableDefs( "D04_11" ) Set idx = tdf.CreateIndex( "PK_D04_11" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D04_11", False ) tdf.Indexes.Append idx '=== Create primary key for table D04_13 ====== Set tdf = dbs.TableDefs( "D04_13" ) Set idx = tdf.CreateIndex( "PK_D04_13" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D04_13", False ) tdf.Indexes.Append idx '=== Create primary key for table D04_16 ====== Set tdf = dbs.TableDefs( "D04_16" ) Set idx = tdf.CreateIndex( "PK_D04_16" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D04_16", False ) tdf.Indexes.Append idx '=== Create primary key for table D04_17 ====== Set tdf = dbs.TableDefs( "D04_17" ) Set idx = tdf.CreateIndex( "PK_D04_17" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D04_17", False ) tdf.Indexes.Append idx '=== Create primary key for table D05 ====== Set tdf = dbs.TableDefs( "D05" ) Set idx = tdf.CreateIndex( "PK_D05" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D05", False ) tdf.Indexes.Append idx '=== Create primary key for table D06 ====== Set tdf = dbs.TableDefs( "D06" ) Set idx = tdf.CreateIndex( "PK_D06_01" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D06_01", False ) tdf.Indexes.Append idx '=== Create primary key for table D06_04 ====== Set tdf = dbs.TableDefs( "D06_04" ) Set idx = tdf.CreateIndex( "PK_D06_04" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D06_04", False ) tdf.Indexes.Append idx '=== Create primary key for table D06_08 ====== Set tdf = dbs.TableDefs( "D06_08" ) Set idx = tdf.CreateIndex( "PK_D06_08" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D06_08", False ) tdf.Indexes.Append idx '=== Create primary key for table D07 ====== Set tdf = dbs.TableDefs( "D07" ) Set idx = tdf.CreateIndex( "PK_D07_01" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D07_01", False ) tdf.Indexes.Append idx '=== Create primary key for table D07_05 ====== Set tdf = dbs.TableDefs( "D07_05" ) Set idx = tdf.CreateIndex( "PK_D07_05" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D07_05", False ) tdf.Indexes.Append idx '=== Create primary key for table D08 ====== Set tdf = dbs.TableDefs( "D08" ) Set idx = tdf.CreateIndex( "PK_D08" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D08", False ) tdf.Indexes.Append idx '=== Create primary key for table D09 ====== Set tdf = dbs.TableDefs( "D09" ) Set idx = tdf.CreateIndex( "PK_D09" ) idx.Primary = True idx.Unique = True idx.IgnoreNulls = False Call AddFieldToIndex( "pk_D09", False ) tdf.Indexes.Append idx End Sub ' Create indexes '================ Sub CreateIndexes() End Sub ' Create alter keys (unique indexes in MS ACCESS) '================================================ Sub CreateAlterKeys() End Sub ' Drop relation '=============== Sub DropRelation(RelName As String) Set rel = Nothing On Error Resume Next Set rel = dbs.Relations(RelName) On Error GoTo 0 If Not rel Is Nothing Then dbs.Relations.Delete ( RelName ) End Sub ' Drop table '============ Sub DropTable(TableName As String) Set tdf = Nothing On Error Resume Next Set tdf = dbs.TableDefs(TableName) On Error GoTo 0 If Not tdf Is Nothing Then dbs.TableDefs.Delete ( TableName ) End Sub ' Drop index '============ Sub DropIndex(TableName As String, IndexName As String) Set tdf = Nothing Set idx = Nothing On Error Resume Next Set tdf = dbs.TableDefs(TableName) Set idx = tdf.Indexes(IndexName) On Error GoTo 0 If (Not tdf Is Nothing) And (Not idx Is Nothing) Then tdf.Indexes.Delete ( IndexName ) End Sub ' Add fields to table '===================== Sub AddFieldToTable(FieldName As String, DataType As String, SizeCol As Integer, Attributes As Long, DefaultValue As Variant, ValText As String, ValRule As String, NotN As Boolean, ZeroLength As Boolean) Dim fld As DAO.Field Set fld = tdf.CreateField( FieldName, DataType ) If SizeCol <> 0 Then fld.Size = SizeCol If Attributes <> 0 Then fld.Attributes = Attributes fld.Required = NotN If DataType = dbText or DataType = dbMemo Then fld.AllowZeroLength = ZeroLength fld.DefaultValue = DefaultValue fld.ValidationRule = ValRule fld.ValidationText = ValText tdf.Fields.Append fld End Sub ' Add properties to table '========================= Sub AddPropertyToTable( PropertyName As String, Value As Variant, DataType As String) Dim prp As DAO.Property Set prp = tdf.CreateProperty(PropertyName, DataType, Value) tdf.Properties.Append prp End Sub ' Add properties to field '========================= Sub AddPropertyToField( FieldName As String, PropertyName As String, Value As Variant, DataType As String) Dim prp As DAO.Property Dim fld As DAO.Field Set fld = tdf.Fields( FieldName ) Set prp = fld.CreateProperty(PropertyName, DataType, Value) fld.Properties.Append prp End Sub ' Add fields to index '===================== Sub AddFieldToIndex( FieldName As String, Descending As Boolean ) Dim fld As DAO.Field Set fld = idx.CreateField( FieldName ) If Descending = True Then fld.Attributes = dbDescending idx.Fields.Append fld End Sub