Вы можете использовать функциональность, называемую Export Data-Tier Application, которая генерирует файл .bacpac
, содержащий схему и данные базы данных.
На целевом сервере вы можете использовать параметр «Импортировать данные-уровень», который создает и заполняет новые база данных из предварительно созданного файла .bacpac
Если вы хотите просто передать схему базы данных, вы можете использовать Extract Data-Tier Application для создания файла и Deploy Application-Tier Application для развертывания созданной схемы базы данных.
Я пробовал этот процесс в разных версиях SQL Server с SQL 2014 на SQL 2012 и с SQL 2014 на SQL 2008R2 и работал хорошо.
UNION
удаляет дублирующиеся записи (где все столбцы в результатах являются тем же), UNION ALL
не делает.
существует хит производительности при использовании UNION
вместо UNION ALL
, так как сервер базы данных должен сделать дополнительную работу для удаления дублирующихся строк, но обычно Вы не хотите дубликаты (особенно при разработке отчетов).
SELECT 'foo' AS bar UNION SELECT 'foo' AS bar
Результат:
+-----+
| bar |
+-----+
| foo |
+-----+
1 row in set (0.00 sec)
SELECT 'foo' AS bar UNION ALL SELECT 'foo' AS bar
Результат:
+-----+
| bar |
+-----+
| foo |
| foo |
+-----+
2 rows in set (0.00 sec)
В Oracle: ОБЪЕДИНЕНИЕ не поддерживает BLOB (или CLOB) типы столбца, ОБЪЕДИНЕНИЕ, которое ВСЕ делает.
Не уверенный, что это имеет значение, какая база данных
UNION
и UNION ALL
должна работать над всеми SQL Server.
необходимо избежать ненужных UNION
с, они - огромная утечка производительности. Как показывает опыт, используйте UNION ALL
, если Вы не уверены, чтобы использовать.
основное различие между ОБЪЕДИНЕНИЕМ и ОБЪЕДИНЕНИЕМ ВСЕ - операция объединения, устраняет дублированные строки из набора результатов, но объединения все возвраты все строки после присоединения.
от http://zengin.wordpress.com/2007/07/31/union-vs-union-all/
UNION
удаляет дубликаты, тогда как UNION ALL
не делает.
для удаления дубликатов, набор результатов должен быть отсортирован, и это может оказывать влияние на производительность ОБЪЕДИНЕНИЯ, в зависимости от объема данных, отсортированных, и настройки различных параметров RDBMS (Для Oracle PGA_AGGREGATE_TARGET
с WORKAREA_SIZE_POLICY=AUTO
или SORT_AREA_SIZE
и SOR_AREA_RETAINED_SIZE
если WORKAREA_SIZE_POLICY=MANUAL
).
В основном, вид быстрее, если он может быть выполнен в памяти, но тот же протест об объеме данных применяется.
, Конечно, при необходимости в данных, возвращенных без дубликатов тогда Вы должны ОБЪЕДИНЕНИЕ использования, в зависимости от источника Ваших данных.
я прокомментировал бы первое сообщение для квалификации, "намного меньше производительного" комментария, но имейте недостаточную репутацию (точки), чтобы сделать так.
Как привычка, Всегда ОБЪЕДИНЕНИЕ использования ВЕСЬ . Используйте только ОБЪЕДИНЕНИЕ в особых случаях, когда необходимо устранить дубликаты, которые могут быть чрезвычайно грязными, и можно считать все о в других комментариях здесь.
mysqli_set_charset("utf8")
, нуждается в двух параметрах, соединении и наборе символов, таким образом, это заканчивается как mysqli_set_charset($conn, "utf8")
.
– Arnau Lacambra
14 April 2014 в 09:37
объединение используется для выбора различных значений из двух таблиц. где как union all используется для выбора всех значений, включая дубликаты из таблиц