Контрольная работа по "Базы данных"

Автор работы: Пользователь скрыл имя, 23 Апреля 2013 в 11:45, контрольная работа

Описание работы

Создать базу данных «РАБОТА БАНКОВ С РАСЧЕТНЫМИ СЧЕТАМИ» (типы счетов, список счетов, перечень операций, тарифы).
1. Разработать с помощью Erwin логическую и физическую модели данных.
2. Путем прямого проектирования получить файл базы данных в формате Access.
3. Создать сценарий, с помощью которого можно сгенерировать базу данных в формате MS SQL Server.

Содержание работы

1. Задание

2. Логическая структура базы данных.

3. Получение файла базы данных в формате Access путем прямого проектирования

4. Создание сценария, с помощью которого можно сгенерировать базу данных в формате MS SQL Server

Заключение

Список используемой литературы

Файлы: 1 файл

BD_variant_17(Автосохраненный).doc

— 543.00 Кб (Скачать файл)

    CHILD_OWNER="", CHILD_TABLE="Переработка"

    P2C_VERB_PHRASE="R/11", C2P_VERB_PHRASE="",

    FK_CONSTRAINT="R_11", FK_COLUMNS="КодПрихода" */

  if

    /* %ChildFK(" or",update) */

    update(КодПрихода)

  begin

    select @nullcnt = 0

    select @validcnt = count(*)

      from inserted,Приход

        where

          /* %JoinFKPK(inserted,Приход) */

          inserted.КодПрихода = Приход.КодПрихода

    /* %NotnullFK(inserted," is null","select @nullcnt = count(*) from inserted where"," and") */

   

    if @validcnt + @nullcnt != @numrows

    begin

      select @errno  = 30002,

             @errmsg = 'Cannot INSERT Переработка because Приход does not exist.'

      goto error

    end

  end

 

  /* ERwin Builtin Thu Jan 05 03:10:34 2012 */

  return

error:

    raiserror @errno @errmsg

    rollback transaction

end

 

There is already an object named 'tI_Переработка' in the database.

General SQL Server error: Check messages from the SQL Server.

Execution Failed!

 

create trigger tU_Переработка  on Переработка for UPDATE as

/* ERwin Builtin Thu Jan 05 03:10:36 2012 */

/* UPDATE trigger on Переработка  */

begin

  declare  @numrows int,

           @nullcnt int,

           @validcnt int,

           @insКодПереработки int,

           @insКодПрихода int,

           @errno   int,

           @errmsg  varchar(255)

 

  select @numrows = @@rowcount

  /* ERwin Builtin Thu Jan 05 03:10:36 2012 */

  /* Переработка  R/12 Расход ON PARENT UPDATE RESTRICT */

  /* ERWIN_RELATION:PARENT_OWNER="", PARENT_TABLE="Переработка"

    CHILD_OWNER="", CHILD_TABLE="Расход"

    P2C_VERB_PHRASE="R/12", C2P_VERB_PHRASE="",

    FK_CONSTRAINT="R_12", FK_COLUMNS="КодПереработки""КодПрихода" */

  if

    /* %ParentPK(" or",update) */

    update(КодПереработки) or

    update(КодПрихода)

  begin

    if exists (

      select * from deleted,Расход

      where

        /*  %JoinFKPK(Расход,deleted," = "," and") */

        Расход.КодПереработки = deleted.КодПереработки and

        Расход.КодПрихода = deleted.КодПрихода

    )

    begin

      select @errno  = 30005,

             @errmsg = 'Cannot UPDATE Переработка because Расход exists.'

      goto error

    end

  end

 

  /* ERwin Builtin Thu Jan 05 03:10:36 2012 */

  /* Приход R/11 Переработка ON CHILD UPDATE RESTRICT */

  /* ERWIN_RELATION:PARENT_OWNER="", PARENT_TABLE="Приход"

    CHILD_OWNER="", CHILD_TABLE="Переработка"

    P2C_VERB_PHRASE="R/11", C2P_VERB_PHRASE="",

    FK_CONSTRAINT="R_11", FK_COLUMNS="КодПрихода" */

  if

    /* %ChildFK(" or",update) */

    update(КодПрихода)

  begin

    select @nullcnt = 0

    select @validcnt = count(*)

      from inserted,Приход

        where

          /* %JoinFKPK(inserted,Приход) */

          inserted.КодПрихода = Приход.КодПрихода

    /* %NotnullFK(inserted," is null","select @nullcnt = count(*) from inserted where"," and") */

   

    if @validcnt + @nullcnt != @numrows

    begin

      select @errno  = 30007,

             @errmsg = 'Cannot UPDATE Переработка because Приход does not exist.'

      goto error

    end

  end

 

 

  /* ERwin Builtin Thu Jan 05 03:10:36 2012 */

  return

error:

    raiserror @errno @errmsg

    rollback transaction

end

 

There is already an object named 'tU_Переработка' in the database.

General SQL Server error: Check messages from the SQL Server.

Execution Failed!

 

create trigger tD_Приход on Приход for DELETE as

/* ERwin Builtin Thu Jan 05 03:10:36 2012 */

/* DELETE trigger on Приход */

begin

  declare  @errno   int,

           @errmsg  varchar(255)

    /* ERwin Builtin Thu Jan 05 03:10:36 2012 */

    /* Приход R/11 Переработка ON PARENT DELETE RESTRICT */

    /* ERWIN_RELATION:PARENT_OWNER="", PARENT_TABLE="Приход"

    CHILD_OWNER="", CHILD_TABLE="Переработка"

    P2C_VERB_PHRASE="R/11", C2P_VERB_PHRASE="",

    FK_CONSTRAINT="R_11", FK_COLUMNS="КодПрихода" */

    if exists (

      select * from deleted,Переработка

      where

        /*  %JoinFKPK(Переработка,deleted," = "," and") */

        Переработка.КодПрихода = deleted.КодПрихода

    )

    begin

      select @errno  = 30001,

             @errmsg = 'Cannot DELETE Приход because Переработка  exists.'

      goto error

    end

 

    /* ERwin Builtin Thu Jan 05 03:10:36 2012 */

    return

error:

    raiserror @errno @errmsg

    rollback transaction

end

 

There is already an object named 'tD_Приход' in the database.

General SQL Server error: Check messages from the SQL Server.

Execution Failed!

 

create trigger tU_Приход on Приход for UPDATE as

/* ERwin Builtin Thu Jan 05 03:10:37 2012 */

/* UPDATE trigger on Приход */

begin

  declare  @numrows int,

           @nullcnt int,

           @validcnt int,

           @insКодПрихода int,

           @errno   int,

           @errmsg  varchar(255)

 

  select @numrows = @@rowcount

  /* ERwin Builtin Thu Jan 05 03:10:37 2012 */

  /* Приход R/11 Переработка ON PARENT UPDATE RESTRICT */

  /* ERWIN_RELATION:PARENT_OWNER="", PARENT_TABLE="Приход"

    CHILD_OWNER="", CHILD_TABLE="Переработка"

    P2C_VERB_PHRASE="R/11", C2P_VERB_PHRASE="",

    FK_CONSTRAINT="R_11", FK_COLUMNS="КодПрихода" */

  if

    /* %ParentPK(" or",update) */

    update(КодПрихода)

  begin

    if exists (

      select * from deleted,Переработка

      where

        /*  %JoinFKPK(Переработка,deleted," = "," and") */

        Переработка.КодПрихода = deleted.КодПрихода

    )

    begin

      select @errno  = 30005,

             @errmsg = 'Cannot UPDATE Приход because Переработка  exists.'

      goto error

    end

  end

 

 

  /* ERwin Builtin Thu Jan 05 03:10:37 2012 */

  return

error:

    raiserror @errno @errmsg

    rollback transaction

end

 

There is already an object named 'tU_Приход' in the database.

General SQL Server error: Check messages from the SQL Server.

Execution Failed!

 

create trigger tI_Расход on Расход for INSERT as

/* ERwin Builtin Thu Jan 05 03:10:37 2012 */

/* INSERT trigger on Расход */

begin

  declare  @numrows int,

           @nullcnt int,

           @validcnt int,

           @errno   int,

           @errmsg  varchar(255)

 

  select @numrows = @@rowcount

  /* ERwin Builtin Thu Jan 05 03:10:37 2012 */

  /* Переработка  R/12 Расход ON CHILD INSERT RESTRICT */

  /* ERWIN_RELATION:PARENT_OWNER="", PARENT_TABLE="Переработка"

    CHILD_OWNER="", CHILD_TABLE="Расход"

    P2C_VERB_PHRASE="R/12", C2P_VERB_PHRASE="",

    FK_CONSTRAINT="R_12", FK_COLUMNS="КодПереработки""КодПрихода" */

  if

    /* %ChildFK(" or",update) */

    update(КодПереработки) or

    update(КодПрихода)

  begin

    select @nullcnt = 0

    select @validcnt = count(*)

      from inserted,Переработка

        where

          /* %JoinFKPK(inserted,Переработка) */

          inserted.КодПереработки = Переработка.КодПереработки and

          inserted.КодПрихода = Переработка.КодПрихода

    /* %NotnullFK(inserted," is null","select @nullcnt = count(*) from inserted where"," and") */

   

    if @validcnt + @nullcnt != @numrows

    begin

      select @errno  = 30002,

             @errmsg = 'Cannot INSERT Расход because Переработка  does not exist.'

      goto error

    end

  end

 

  /* ERwin Builtin Thu Jan 05 03:10:37 2012 */

  return

error:

    raiserror @errno @errmsg

    rollback transaction

end

 

There is already an object named 'tI_Расход' in the database.

General SQL Server error: Check messages from the SQL Server.

Execution Failed!

 

create trigger tU_Расход on Расход for UPDATE as

/* ERwin Builtin Thu Jan 05 03:10:38 2012 */

/* UPDATE trigger on Расход */

begin

  declare  @numrows int,

           @nullcnt int,

           @validcnt int,

           @insКодРасхода int,

           @insКодПереработки int,

           @insКодПрихода int,

           @errno   int,

           @errmsg  varchar(255)

 

  select @numrows = @@rowcount

  /* ERwin Builtin Thu Jan 05 03:10:38 2012 */

  /* Переработка  R/12 Расход ON CHILD UPDATE RESTRICT */

  /* ERWIN_RELATION:PARENT_OWNER="", PARENT_TABLE="Переработка"

    CHILD_OWNER="", CHILD_TABLE="Расход"

    P2C_VERB_PHRASE="R/12", C2P_VERB_PHRASE="",

    FK_CONSTRAINT="R_12", FK_COLUMNS="КодПереработки""КодПрихода" */

  if

    /* %ChildFK(" or",update) */

    update(КодПереработки) or

    update(КодПрихода)

  begin

    select @nullcnt = 0

    select @validcnt = count(*)

      from inserted,Переработка

        where

          /* %JoinFKPK(inserted,Переработка) */

          inserted.КодПереработки = Переработка.КодПереработки and

          inserted.КодПрихода = Переработка.КодПрихода

    /* %NotnullFK(inserted," is null","select @nullcnt = count(*) from inserted where"," and") */

   

    if @validcnt + @nullcnt != @numrows

    begin

      select @errno  = 30007,

             @errmsg = 'Cannot UPDATE Расход because Переработка  does not exist.'

      goto error

    end

  end

 

  /* ERwin Builtin Thu Jan 05 03:10:38 2012 */

  return

error:

    raiserror @errno @errmsg

    rollback transaction

end

 

There is already an object named 'tU_Расход' in the database.

General SQL Server error: Check messages from the SQL Server.

Execution Failed!

 

Schema Generation Complete

2 queries succeeded.  17 queries failed. 

 

 

Заключение 

 

Для выполнения работы использовались следующие программные средства:

- Erwin 4.1;

- MS Access 2000;

- MS SQL Server 2000.

В ходе контрольной  работы была создана база данных «УПРАВЛЕНИЕ РАБОТОЙ НЕФТЕБАЗЫ».

При помощи средства Erwin были разработаны логическая и физическая модели данных.

Путем прямого  проектирования был получен файл базы данных в формате Access NBase.mdb.

Также в контрольной  работе был получен SQL-сценарий для создания базы данных в формате MS SQL-Server, текст сценария находится в третьем разделе данной пояснительной записки.

 

Список используемой литературы

 

    1. Бутов А. А., Орешко И. Г., Шестаков Е. А. Визуальные и программные средства проектирования реляционных баз данных. Лабораторный практикум для студ.– Минск : БГУИР, 2009. – 108 с.
  1. Артемов Д., Microsoft SQL Server 2000: профессионалы для профессионалов. – Русская редакция, 2005г. – 512 с.



Информация о работе Контрольная работа по "Базы данных"