Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Использование INSERT




Добавление данных.

Управление данными

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

1) Спомощью команды INSERT. Используя эту команду, можно добавить как одну строку, так и множество строк.

2) С помощью программного интерфейса баз данных Database API. Этот способ включает использование ADO, OLE DB, ODBC и DB-Library.

3) С использованием команды SELECT INTO, когда результат выполнения запроса копируется в таблицу.

4) С использованием возможностей Data Transformation Services. Используя эту технологию, можно выполнять сложные операции переноса и трансформации данных с использованием множества распределенных гетерогенных источников информации.

Команда INSERT позволяет вставить в таблицу одну или несколько строк. Приведем синтаксис команды INSERT:

INSERT [INTO]

{ table_name [WITH (<table_hint_limited> [...n])]

| view_name

| rowset_function_limited }

{ [(column_list[,...n])]

{ VALUES ({ DEFAULT | NULL | expression }[....n])

| derived_table | execute_statement } } | DEFAULT VALUES

Рассмотрим назначение каждого из аргументов команды.

INTO – дополнительное ключевое слово. Оно может быть использовано в команде между словом INSERT и именем таблицы для обозначения того, что следующий параметр является именем таблицы, в которую будут вставлены данные.

Table_name – имя таблицы, в которую необходимо вставить данные.

WITH <table_hint_limited> – специальная конструкция, с помощью которой можно на время вставки строк в таблице установить определенный уровень блокирования.

view_name – имя представления, в которое необходимо вставить данные. Изменение данных через представление должно быть разрешено. SQL Server 7.0 не может изменять с помощью одной команды данные в более чем одной исходной таблице представления.

rowset_function_limited – этот аргумент содержит команды OPENQUERY и OPENROWSET, которые определяют набор данных для вставки.

column_list – этот аргумент содержит список колонок строки, в которые будет производиться вставка данных. Если этот аргумент опущен, то сервер будет вставлять данные последовательно во все колонки, начиная с первой. Значения для колонок указываются аргументом VALUES.

VALUES – ключевое слово, которое определяет набор данных, которые будут вставлены в таблицу. Количество аргументов VALUES определяется количеством колонок в таблице или количе­ством колонок в списке column_list (если таковой имеется). Для каждой колонки таблицы можно указать один из трех возможных вариантов:

– DEFAULT. Будет вставлено значение по умолчанию, определенное для колонки.

– NULL. При указании этого параметра в колонку, для которой разрешено хранение значений NULL, будет вставлено значение NULL.

– EXPRESSION. В явном виде задает значение, которое будет вставлено в колонку таблицы.

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

execute_statement – набор данных, помимо использования команды SELECT, может быть получен с помощью команды EXECUTE как результат выполнения хранимой процедуры или другой конструкции.

DEFAULT VALUES – при указании этого параметра строка будет содержать только значения по умолчанию. Если для колонки не установлено значение по умолчанию, но разрешено хранение значений NULL, то в колонку будет вставлено NULL. Если же для колонки не разрешено хранение NULL, нет значения по умолчанию и в команде INSERT не указано значение для вставки, то сервер выдаст сообщение об ошибке и прервет выполнение команды. Это произойдет также в случае неправильного указания типа данных.

В простейшем случае вставка данных с помощью команды INSERT предлагает использование конструкции INSERT...VALUES:

INSERT [INTO] table_or_view

[(column_list(..)]

VALUES (data_values [...n])

Аргумент table_or_view указывает имя таблицы или представления, в которые необходимо вставить строку данных.

Если необходимо быстро создать таблицу, имеющую такую структуру, чтобы в ней можно было сохранить результат выполнения запроса, то лучшим выходом будет использование команды SELECT...INTO. При выполнении запроса SELECT...INTO сервер автоматически создаст новую таблицу с нужной структурой и вставит в нее полученный набор строк. Синтаксис команды SELECT...INTO следующий:

SELECT {column_name [AS] column_alias [...n]}

INTO new_table FROM {source_table [..n]}

<select_options>

Рассмотрим назначение каждого из аргументов:

Аргумент column_name указывает имя колонки таблицы, которая будет включена в результат. Указанная колонка должна принадлежать одной из таблиц, перечисленных в списке FROM {source_table[..n]}. Если колонки, принадлежащие разным таблицам, имеют одинаковые имена, то для колонки необходимо использовать псевдоним.В противном случае сервер попытается создать таблицу с колонками, имеющими одинаковые имена. В результате произойдет ошибка, и выполнение запроса будет прервано

new_table – содержит имя таблицы, которая будет создана.

Конструкция FROM {source_table} содержит список исходных таблиц. В более сложных запросах с помощью этой конструкции определяются условия связывания двух и более таблиц.

select_options – содержит список различных параметров команды select.




Поделиться с друзьями:


Дата добавления: 2015-05-09; Просмотров: 430; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.009 сек.