Файловое строение SQLite. Команды для создания базы данных Запуск Access и завершение работы с программой

Если для решения ваших задач использовать шаблон не имеет смысла, можно создать базу данных с нуля. Поскольку Access хранит все таблицы базы данных, а также другие объекты в одном файле, прежде чем приступить к созданию таблиц базы данных, необходимо создать файл пустой базы данных.

Для создания файла новой пустой базы данных щелкните в области создания базы данных стартового окна Access на элементе Новая база данных (Blank Database).

Выбор варианта Новая база данных (Blank database) или Пустая веб-база данных (Blank web database) определяет функции, доступные для работы с базой данных. Базы данных для настольных компьютеров нельзя опубликовать в Интернете, а веб-базы данных не поддерживают некоторые функции баз данных для на-стольных компьютеров, например итоговые запросы.

Справа, в области Новая база данных (Blank database), введите имя файла в поле Имя файла (File Name), например Поставка товаров.accdb.

Задавая имя файла базы данных, следует иметь в виду, что оно не должно содержать символов: \ / : * ? » < > |, а его предельная длина составляет 215 символов, включая пробелы.

Под именем отображается имя папки, в которой по умолчанию сохранится файл базы данных. Если надо сохранить файл в другой папке, щелкните на значке Поиск расположения для размещения базы данных (Browse for a location to put your database) (справа от имени файла базы данных) и в окне Файл новой базы данных (File New Database) откройте нужную папку.

ЗАМЕЧАНИЕ
Для изменения используемой по умолчанию папки для файлов новых баз данных Мои документы (My Documents) на вкладке Файл (File) выполните команду Параметры Общие (General) в разделе Создание баз данных (Creating databases) в поле Рабочий каталог (Default database folder), используя кнопку Обзор (Browse), выберите путь к папке, в которой предполагается хранить новые базы данных.

В окне Файл новой базы данных (File New Database) в поле Тип файла (Save as type) выберите формат создаваемой базы данных. По умолчанию формат файла имеет значение Базы данных Microsoft Office Access 2007 (*.accdb) (Microsoft Access 2007 Databases). В Access 2010 сохранился формат базы данных Access 2007. Базы данных в формате Access 2007 сохраняются в файлах с расширением accdb. В предыдущих версиях базы данных сохранялись в файлах с расширением mdb.

ЗАМЕЧАНИЕ
Для изменения формата выбираемого для новой базы данных по умолчанию на вкладке Файл (File) выполните команду Параметры (Options) и в появившемся диалоговом окне на вкладке Общие (General) в разделе Создание баз данных (Creating databases) в поле Формат файла по умолчанию для пустой базы данных (Default file format for Blank Database) выберите нужный формат.

Закончив выбор в окне Файл новой базы данных (File New Database), щелчком по кнопке Создать (Create) завершите процесс создания пустого файла новой базы данных. В результате открывается окно созданной базы данных с пустой таблицей с именем Таблица1 (Table1) в режиме таблицы. Курсор находится в первой пустой ячейке столбца Щелкните для добавления (Click to Add). Теперь можно приступить к созданию этой таблицы и других объектов новой оригинальной базы данных.

При создании нового файла базы данных может быть выбран формат, предназначенный для работы с базой данных, размещенной на SQL-сервере. Последний формат называется Microsoft Access Проекты (*.adp). Проект предназначен для разработки объектов, составляющих приложение пользователя. Сама база данных, хотя и может разрабатываться в среде проекта, сохраняется на сервере и имеет соответствующий формат. Проекты сохраняются в файлах с расширением adp.

При создании проекта возможно подключение к существующей на сервере базе данных или создание новой базы данных на сервере.

И у нас видео на эту тему:

Мы узнаем как создать таблицы в базах данных MS Access 2010.

Использование баз данных других форматов

Системы управления реляционными базами данных различных производителей работают с файлами баз данных определенного формата. Многие из них используют специальные индексные файлы для ускорения поиска и сортировки данных в таблицах .
Access 2010 позволяет работать не только непосредственно с таблицами баз данных других форматов, но и с индексными файлами этих таблиц.
В этом разделе будут описаны форматы баз данных, которые можно импортировать (присоединять) в Access 2002, особенности работы с таблицами баз данных других форматов, а также использование индексных файлов, преобразование типов данных и типичные ошибки, возникающие при импорте таблиц.
Форматы баз данных
В большинстве настольных СУБД каждая таблица базы данных хранится в отдельном файле, который содержит и служебную информацию и данные в соответствующем формате. К служебной относится информация, описывающая структуру файла, например имена и типы данных полей таблицы, число записей в файле, длина файла и т. д.
В отличие от других СУБД, Microsoft Access хранит все объекты (кроме страниц доступа к данным) в одном файле с расширением mdb. Кроме того, MDB-файл включает набор системных таблиц, которые содержат всю необходимую информацию об объектах базы данных, в том числе информацию о расположении и параметрах присоединенных таблиц других форматов. По умолчанию системные таблицы не выводятся в окне базы данных Access 2010. Чтобы получить доступ к этим таблицам, необходимо изменить один из параметров Access. Для этого нужно выбрать команду Сервис, Параметры (Tools, Options), раскрыть вкладку Вид (View) диалогового окна Параметры (Options) и в группе Отображать (Show) установить флажок Системные объекты (System Objects). Системные таблицы Access имеют доступ только на чтение, поэтому они не могут модифицироваться пользователем.
Ниже описаны форматы файлов баз данных, которые могут быть присоединены или импортированы Access 2010.

  • Таблицы предыдущей версии Access 2000 (MDB) обрабатываются совершенно аналогично таблицам Access 2010. Они не требуют от пользователя специальных усилий по импорту и открываются так же, как таблицы Access 2010 . Отличие будет состоять только в том, что после названия открытого файла в заголовке окна базы данных в скобках появится надпись: Формат Access 2000 (Access 2000 format file).
  • Таблицы dBASE III, III+, IV, 5 и 7 (DBF), файлы полей типа MEMO (DBT), индексные файлы dBASE III (NDX) и индексные файлы dBASE IV (MDX).

Замечание
Драйверы ISAM, входящие в стандартную поставку Microsoft Office в составе компонента Microsoft Data Access Component (MDAC) 2.1 и выше, обеспечивают доступ к файлам формата DBF только на чтение. Чтобы иметь доступ на чтение и запись, требуется установить Borland Database Engine (BDE) 4.x или выше. Существуют также драйверы от фирмы Microsoft, которые обеспечивают доступ на чтение и запись и не требуют установки BDE, но для этого необходимо обратиться в службу Microsoft Technical Support.
Формат файлов таблиц и индексов dBASE III и dBASE IV является стандартным для систем управления базами данных, работающих на персональных компьютерах. Система управления базами данных Access 2010 позволяет присоединять индексные файлы форматов NDX и MDX. При изменении присоединенной проиндексиро-ванной таблицы dBASE Access автоматически обновляет индексные файлы.
Замечание
Наличие индексных файлов NDX (dBASE III), MDX (dBASE IV) необязательно. Тем не менее, если эти файлы доступны, лучше их использовать. В противном случае при изменении присоединенной таблицы dBASE эти изменения не отражаются в индексном файле, что может вызвать ошибки при попытке использования проиндексированных таблиц, измененных в Access, в приложениях dBASE.
Если импортируемый файл dBASE содержит поля типа MEMO, то необходимо, чтобы файлы с данными этих полей (DBT) были доступны, т. е. они должны находиться в той же папке, что и сама таблица. Если Access 2010 не удается найти файл DBT, то присоединение или импорт данных из такой таблицы вызовет ошибку. При экспорте данных из таблицы Access 2010, содержащей поле типа MEMO, в таблицу формата dBASE автоматически создается файл DBT и ему присваивается то же имя, что и файлу таблицы.

  • Табличные (DB) и индексные (РХ) файлы Paradox 3.x, 4.x и 5.0.

Access 2010 позволяет присоединять табличные и индексные файлы Paradox 3.x и 4.x для MS-DOS, а также Paradox для Windows 5.0 и 8.0. При обновлении данных в таблице Paradox из Access индексный файл должен быть доступен наряду с файлом таблицы. В процессе присоединения таблицы Access 2010 автоматически присоединяет и индексный файл (если он существует).
Все дополнительные файлы, используемые при импорте или присоединении таблиц баз данных, должны быть размещены в одной папке с таблицей. Стоит также заметить, что большинство приложений, работающих с файлами таблиц и индексов, ис-
пользуют для этих файлов стандартные расширения, приведенные выше, хотя это и не является обязательным. Поэтому определение конкретного формата файла таблицы базы данных иногда может оказаться нетривиальным.
Присоединение и импорт внешних таблиц
Прежде чем перейти к вопросам, связанным с импортом и присоединением таблиц, нужно понять разницу между этими возможностями Access 2002.
При импорте таблицы из другой базы данных в рассматриваемом файле MDB создается новая таблица Access, которая имеет ту же структуру (состав и типы полей), что и исходная таблица, и содержит все данные исходной таблицы. После этого вы уже работаете с новой таблицей в формате Access, которая не зависит от исходной таблицы.
Когда вы присоединяете внешнюю таблицу, вы просто получаете доступ к таблице другого приложения, можете использовать данные из этой таблицы, но при этом она остается в старом приложении, в Access хранится только информация о связи. Оба приложения (то, в котором эта таблица была создана, и приложение Access) могут работать с этой таблицей одновременно. Однако для того, чтобы данные в присоединенной таблице можно было не только просматривать, но и изменять, эта таблица обязательно должна иметь ключевое поле. Обычно ключевое поле определяется в процессе присоединения таблицы.
С присоединенной к базе данных Access 2010 внешней таблицей можно работать точно так же, как если бы она содержалась в этой базе. Единственным ограничением является то, что невозможно изменить структуру присоединенной таблицы (имена полей, типы данных и т. д.). Однако название таблицы можно изменить (при этом имя файла внешней таблицы не изменяется, изменяется только название (псевдоним) таблицы в базе данных Access), например, сделать его более понятным, т. к. ограничения на имя таблиц в Access менее жесткие, чем в других СУБД.
Кроме того, в присоединенной таблице можно в режиме Конструктора изменять ряд свойств полей (формат, надпись, маску ввода, число десятичных знаков), которые влияют только на то, как эта таблица будет отображаться в Access. При этом в "родном" приложении свойства полей не меняются.
Замечание
В первых версиях Access для операции присоединения внешней таблицы применялся термин присоединение (attachment) . В последних версиях введен термин связывание (linking). Таким образом, внешние таблицы теперь становятся связанными. Мы используем в этой книге старый термин присоединение и, соответственно, присоединенные таблицы, чтобы не путать со связанными таблицами в одной базе данных, которые содержат связанные данные.
Присоединение внешних таблиц к базе данных Access 2010 бывает выгодным в следующих случаях:

  • с таблицей работатют совместно несколько пользователей;
  • невозможен отказ от применения другой СУБД для модификации данных;
  • таблица хранится на другой машине (например, на сервере локальной сети ) и содержит очень большой объем информации.

Использование импорта внешних таблиц в базе данных Access 2010 оправдано в следующих случаях:

  • если при разработке приложений необходимо снять ограничения на изменение свойств внешних таблиц;
  • отсутствует непосредственный доступ к файлу таблицы;
  • необходимо переопределить ключевые поля таблиц Paradox. Такая ситуация может возникнуть в случае, если структура одной или нескольких таблиц серьезно противоречит правилам нормализации;
  • в таблицу предполагается вводить повторяющиеся данные, а первичный ключ внешней таблицы этого не допускает.

При разработке приложения, которое должно работать с присоединенными таблицами, можно временно импортировать таблицу в базу данных, а затем на заключительной стадии разработки перейти к использованию присоединенной таблицы. При этом, чтобы исключить проблемы на этапе перехода от работы с импортированной таблицей на работу с присоединенной, не изменяйте имена и типы данных полей импортированной таблицы. В противном случае может потребоваться произвести множество изменений в запросах, формах, отчетах, макросах и модулях VBA. Если разрабатываемое приложение будет использовать таблицы Paradox, то не изменяйте и поля, образующие первичный ключ. Если же предполагается использовать таблицы dBASE, необходимо убедиться в том, что применяемые индексы соответствуют индексным файлам (NDX и MDX) таблицы dBASE.

В большинстве настольных СУБД каждая таблица базы данных хранится в отдельном файле, который содержит и служебную информацию и данные в соответствующем формате. К служебной относится информация, описывающая структуру файла, например имена и типы данных полей таблицы, число записей в файле, длина файла и т. д.

В отличие от других СУБД, Microsoft Access хранит все объекты (кроме страниц доступа к данным) в одном файле с расширением mdb. Кроме того, MDB-файл включает набор системных таблиц, которые содержат всю необходимую информацию об объектах базы данных, в том числе информацию о расположении и параметрах присоединенных таблиц других форматов. По умолчанию системные таблицы не выводятся в окне базы данных Access 2002. Чтобы получить доступ к этим таблицам, необходимо изменить один из параметров Access. Для этого нужно выбрать команду Сервис, Параметры (Tools, Options), раскрыть вкладку Вид (View) диалогового окна Параметры (Options) и в группе Отображать (Show) установить флажок Системные объекты (System Objects). Системные таблицы Access имеют доступ только на чтение, поэтому они не могут модифицироваться пользователем.

Ниже описаны форматы файлов баз данных, которые могут быть присоединены или импортированы Access 2002.

  • Таблицы предыдущей версии Access 2000 (MDB) обрабатываются совершенно аналогично таблицам Access 2002. Они не требуют от пользователя специальных усилий по импорту и открываются так же, как таблицы Access 2002. Отличие будет состоять только в том, что после названия открытого файла в заголовке окна базы данных в скобках появится надпись: Формат Access 2000 (Access 2000 format file).
  • Таблицы dBASE III, III+, IV, 5 и 7 (DBF), файлы полей типа MEMO (DBT), индексные файлы dBASE III (NDX) и индексные файлы dBASE IV (MDX).

Замечание

Драйверы ISAM, входящие в стандартную поставку Microsoft Office в составе компонента Microsoft Data Access Component (MDAC) 2.1 и выше, обеспечивают доступ к файлам формата DBF только на чтение. Чтобы иметь доступ на чтение и запись, требуется установить Borland Database Engine (BDE) 4.x или выше. Существуют также драйверы от фирмы Microsoft, которые обеспечивают доступ на чтение и запись и не требуют установки BDE, но для этого необходимо обратиться в службу Microsoft Technical Support.

Формат файлов таблиц и индексов dBASE III и dBASE IV является стандартным для систем управления базами данных, работающих на персональных компьютерах. Система управления базами данных Access 2002 позволяет присоединять индексные файлы форматов NDX и MDX. При изменении присоединенной проиндексиро-ванной таблицы dBASE Access автоматически обновляет индексные файлы.

Замечание

Наличие индексных файлов NDX (dBASE III), MDX (dBASE IV) необязательно. Тем не менее, если эти файлы доступны, лучше их использовать. В противном случае при изменении присоединенной таблицы dBASE эти изменения не отражаются в индексном файле, что может вызвать ошибки при попытке использования проиндексированных таблиц, измененных в Access, в приложениях dBASE.

Если импортируемый файл dBASE содержит поля типа MEMO, то необходимо, чтобы файлы с данными этих полей (DBT) были доступны, т. е. они должны находиться в той же папке, что и сама таблица. Если Access 2002 не удается найти файл DBT, то присоединение или импорт данных из такой таблицы вызовет ошибку. При экспорте данных из таблицы Access 2002, содержащей поле типа MEMO, в таблицу формата dBASE автоматически создается файл DBT и ему присваивается то же имя, что и файлу таблицы.

  • Табличные (DB) и индексные (РХ) файлы Paradox 3.x, 4.x и 5.0.

Access 2002 позволяет присоединять табличные и индексные файлы Paradox 3.x и 4.x для MS-DOS, а также Paradox для Windows 5.0 и 8.0. При обновлении данных в таблице Paradox из Access индексный файл должен быть доступен наряду с файлом таблицы. В процессе присоединения таблицы Access 2002 автоматически присоединяет и индексный файл (если он существует).

Все дополнительные файлы, используемые при импорте или присоединении таблиц баз данных, должны быть размещены в одной папке с таблицей. Стоит также заметить, что большинство приложений, работающих с файлами таблиц и индексов, ис-

пользуют для этих файлов стандартные расширения, приведенные выше, хотя это и не является обязательным. Поэтому определение конкретного формата файла таблицы базы данных иногда может оказаться нетривиальным.

Для создания базы данных запускается утилита IBConsol и устанавливается сеанс связи с локальным сервером. Затем из главного меню утилиты подается команда

Tools -» Interactive SQL

При этом на экран выводится диалоговая панель «Interactive SQL» для описания характеристик файла базы данных (рис. 5.1), в рабочем поле которой и пишется запрос на создание базы данных.

Для выполнения запроса необходимо с клавиатуры подать команду Ctrl + Е или из главного меню подать команду

Рис. 4.1. Запуск сервера InterBase

Создание файла базы данных

Файл базы данных представляет собой контейнер, внутри которого хранятся другие файлы, такие как табличные, индексные, просмотров и т. д. Файл базы данных создается один раз и в дальнейшем изменяться не может. Внутри файла базы данных имеется некоторая область, которая называется метаданные. Внутри этой области хранятся программные блоки, которые содержат в откомпилированном виде описания триггеров, хранимых процедур и генераторов.

Для создания пустого файла базы данных предназначен 501-запрос CREATE DATABASE. В созданный файл базы данных впоследствии будут помещаться файлы таблиц, индексов, просмотров и т. д.

Формат запроса

CREATE DATABASE SCHEMA

[ USER [ PASSWORD ] ]

[ PAGE SIZE [ = ] ]

[ LENGTH [ = ] [ PAGE [ S ] ] ]

[ DEFAULT CHARACTER SET ] f ];

где опция имеет структуру

FILE [ имеет структуру

LENGTH [ = ] [ PAGE [ S ] ] STARTING [ АТ [ PAGE} }

Назначение параметров:

Указывается полное имя файла базы данных. Имя пишется по правилам используемой платформы;

USER - указывается имя пользователя (владельца) базы данных. При каждом обращении к базе данных запрашивается имя пользователя с целью его идентификации;

PASSWORD - указывается пароль, который запрашивается при каждом обращении к базе данных. Пароль запрашивается вместе с именем пользователя (USER

PAGE SIZE [ = ] - задается размер страницы базы данных в байтах. Допустимы следующие размеры одной страницы: 1024 (по умолчанию), 2048, 4096 и 8192;

DEFAULT CHARACTER SET - параметр определяет набор символов, которые будут использоваться для хранения данных в базе данных. То есть задаются символы национальных алфавитов. По умолчанию используется набор NONE , т. е. допускается использование только символов английского алфавита. Для того чтобы использовать буквы русского и английского алфавитов при хранении символьных данных, следует задать набор WIN 1251. Набор символов задается один раз при создании базы данных. Изменить кодировку, заданную по умолчанию или этой опцией, можно при определении конкретных доменов или столбцов;

FILE - указывается имя одного или нескольких файлов, составляющих единую базу данных. Имя каждого файла указывается отдельной опцией FILE ;

STARTING [ АТ [ PAGE ] ] - определяет начальную страницу соответствующего файла базы данных (при многофайловой базе данных);

LENGTH [ = ] [ PAGE [ S ] ] - задает размер текущего файла в страницах. По умолчанию - 75 страниц. Минимальное количество страниц одного файла - 50.

Если определен один файл базы данных (по умолчанию), то предполагается, что он, по мере добавления новых записей, будет занимать все дисковое пространство. Такой подход не рационален при использовании дискового пространства сервера несколькими базами данных. Поэтому на размеры файла (или файлов) накладывают ограничения. При этом отдельные файлы, составляющие единую базу данных, могут храниться на физически разных носителях. Первый из файлов, составляющих единую базу данных, называется первичным, а остальные файлы - вторичными. Вторичные файлы могут отличаться именами, расширениями и местом хранения. При задании параметров вторичных файлов некоторые элементы являются необязательными и их можно не задавать, например знак равенства. Приведенная ниже команда (пример 5.1) создает файл базы данных внутри текущей рабочей директории (папки).

Пароль и имя пользователя, задаваемые в этом операторе, проверяются сервером при каждом обращении к базе данных с целью идентификации пользователя. Права и привилегии доступа к базе данных определяются оператором GRANT, который будет рассмотрен ниже.

Размер страницы для всей базы данных фиксирован и может иметь одно из значений: 1024, 2048, 4096 или 8192 байта. По умолчанию принят размер 1024 байта. Обмен данными между приложением клиента и базой данных производится в размере страницы. Увеличение размера страницы уменьшает время обработки данных (выполнение запросов) за счет сокращения количества операций чтения, но увеличение размера страницы оправдано только в том случае, если выборки данных (порции информации) имеют большой размер. Если размер выборки мал при большом размере страницы, то объем страницы используется не эффективно.

Пример 5.1. Создание многофайловой (распределенной) базы данных.

CREATE DATABASE D:SKAZKABOOK.GDB USER "SYSDBA" PASSWORD "masterkey"

FILE D:SKAZKABOOK.GDl STARTING AT PAGE 1501 LENGTH 100

FILE D:SKAZKABOOK.GD2

На диске D внутри каталога «SKAZKA» создается база данных, состоящая из трех файлов:

  • первый файл с именем BOOK.GDB имеет размер страниц 1024 байта (по умолчанию), количество страниц 1500 (с 1 по 1500, так как второй файл BOOK.GD 1 начинается со страницы с номером 1501);
  • второй файл с именем BOOK. GDI имеет размер страниц 1024 байта, количество страниц - 100;
  • третий файл BOOK.GD2 имеет размер страниц 1024 байта, количество страниц не определено (до заполнения диска).

Заданы имя пользователя (владельца базы данных) - SYSDBA и пароль - masterkey.

Удалить базу данных может либо пользователь (владелец) базы данных, либо системный администратор, используя команду

Причем удаляется текущая база данных, т. е. база данных, с которой установлено соединение.

После применения этой команды последующее восстановление базы данных невозможно.

Основные объекты Access -

а. таблицы, формы, запросы, отчеты, страницы;

б. запросы, отчеты, формы, макросы, таблицы;

в. таблицы, запросы, формы, отчеты, страницы, макросы, модули;

г. формы, отчеты, макросы, модули.

Базовым объектом Access является...

б. таблица;

г. модуль.

Для ввода, просмотра и модифицирования в таблице или запросе предназначен объект

а. таблица;

б. запрос;

в. макрос;


Создать таблицу базы данных по следующему образцу:

Записи пронумерованы от 1 до 7 соответственно их порядку в таблице.

Отсортируйте по двум ключам "название+производитель" в порядке убывания.


Тема «Разработка презентации в среде MS PowerPoint интерфейс основные элементы и возможности»

1. Вопросы для проверки исходного (базового) уровня знаний:

1. Для чего предназначена программа PowerPoint?

2. С какой целью создаются презентации?

3. Каковы преимущества электронных презентаций в сравнении с другими видами презентаций?

2. Целевые задачи:

Студент должен знать: · Назначение и возможности программы PowerPoint. · Какие существуют виды презентаций. · Этапы создания презентации. · Основные элементы интерфейса программы PowerPoint. · Способы создания презентаций. · Процесс создания презентации с использованием мастера автосодержания. · Процесс создания презентации с использованием шаблона оформления. · Основы работы со слайдами (добавление и удаление слайдов, изменение порядка слайдов, изменение разметки слайдов). Студент должен уметь: · Использовать возможности приложения PowerPoint для создания презентаций. · Создавать презентации определенной структуры и вида, и придавать им оптимальный для восприятия вид Литература 1. Информационные системы и технологии в медицине и здравоохранении. под ред. Арунянца Г.Г Владикавказ, Олимп, 2001. 2. Лекция по данной теме.

3. Задания для самостоятельной работы по изучаемой теме:

1. Перечислите интерфейсные элементы программы PowerPoint.

2. Какие существуют виды презентаций в PowerPoint?

3. Опишите этапы создания презентации в PowerPoint.

4. Какие существуют режимы просмотра в PowerPoint? Охарактеризуйте их. Как переключаться между режимами?

5. Какие объекты можно разместить на слайде PowerPoint?

Тест

1. Можно ли цвет фона изменить для каждого слайда?

c. Никогда

2. Как добавить рисунок на слайд?

a. ВСТАВКА - РИСУНОК

b. ПРАВКА - РИСУНОК

c. ФАЙЛ – РИСУНОК

Слайд - это...

a. символ презентации.

b. основной элемент презентации.

c. абзац презентации.

d. строчка презентации.

4. Как вставить новый слайд?

a. В меню ПРАВКА выбери команду СОЗДАТЬ СЛАЙД.

b. На вкладке СЛАЙДЫ щелкни эскиз слайда и нажми клавишу ESC.

c. На вкладке СЛАЙДЫ щелкни эскиз слайда и нажми клавишу ENTER