50٪ تخفیف روی تمام دوره‌ها!
پایان تخفیف تا:
مشاهده دوره‌ها
0

ایمپورت جداول در دیتا بیس sql 2012

سلام

لطفا و در صورت امکان بنده را راهنمایی کنید .

جداول یک دیتابیس را می خواهم انتقال بدم

اسکریپت دیتابیس را دارم و یک دیتابیس جدید هم ایجاد کردم . به چه صورت کل اون دیتابیس را به این جدید انتقال بدم .

مبتدی هستم لطفا در صورت امکان کامل راهنمایی کنید .

با تشکر

پرسیده شده در 1393/11/07 توسط

5 پاسخ

0

سلام

خیلی لطف کردید . جواب کاملی بود این مراحل را بلد نبودم یاد گرفتم و مدیون شما هستم .

مشکل من اینه که الان اسکریپت را دارم ( از یک دیتا بیس گرفتم و فقط جداول خالی هست که می خوام برای یک سایت دیگه از همین نوع کپی کنم ) ولی نمیتونم روی دیتابیس جدید که ایجاد کردم ایمپورت کنم .

پاسخ در 1393/11/08 توسط
3

دوست عزیز، شما به دو صورت می تونید بانک رو انتقال بدید، یکی تهیه کپی پشتیبان از بانک و Restore کردن آن روی مقصد هست. پیشنهاد می کنم مقالات دوست خوبم مهندس نصیری را در این باره مطالعه کنید:

حالت دیگه ایجاد Script از روی بانک به همراه اطلاعات اون هست. برای اینکار، ابتدا بر روی بانک مورد نظر راست کلیک کنید و از قسمت Tasks گزینه Generate Scripts و انتخاب کنید:

دوست عزیز، شما به دو صورت می تونید بانک رو انتقال بدید، یکی تهیه کپی پشتیبان از بانک و Restore کردن آن روی مقصد هست. پیشنهاد می کنم مقالات دوست خوبم مهندس نصیری را در این باره مطالعه کنید:

# |Backup گیری از SQL Server : معرفی انواع Backup در SQL Server::https://tosinso.com/articles/6038/%d8%a7%d9%86%d9%88%d8%a7%d8%b9-%d8%b1%d9%88%d8%b4-%d9%87%d8%a7%db%8c-%d8%aa%d9%87%db%8c%d9%87-%d9%be%d8%b4%d8%aa%db%8c%d8%a8%d8%a7%d9%86-%d8%a7%d8%b2-SQL-Server-plus-%d8%a7%d9%86%d9%88%d8%a7%d8%b9-Recovery-Model|
# |Backup گیری از SQL Server : معرفی انواع Recovery Model در SQL سرور::https://tosinso.com/articles/6038/%d8%a7%d9%86%d9%88%d8%a7%d8%b9-%d8%b1%d9%88%d8%b4-%d9%87%d8%a7%db%8c-%d8%aa%d9%87%db%8c%d9%87-%d9%be%d8%b4%d8%aa%db%8c%d8%a8%d8%a7%d9%86-%d8%a7%d8%b2-SQL-Server-plus-%d8%a7%d9%86%d9%88%d8%a7%d8%b9-Recovery-Model|

حالت دیگه ایجاد Script از روی بانک به همراه اطلاعات اون هست. برای اینکار، ابتدا بر روی بانک مورد نظر راست کلیک کنید و از قسمت Tasks گزینه Generate Scripts و انتخاب کنید:

||http://dba.tosinso.com/files/get/fa029f2c-21a4-4487-b548-54c54b8d47ae||

بعد از اینکار از پنجره باز شده میتونید گزینه Script entire database and all database objects را برای اسکریپت کردن کل بانک و یا Select specific database objects برای انتخاب کردن موارد دلخواه را انتخاب کنید:

||http://dba.tosinso.com/files/get/d61adc0a-0849-4067-9e2b-a1c52fb92e28||

با کلیک بر روی Next از پنجره باز شده روی دکمه Advance کلیک کرده و از لیست گزینه Types of data to script رو روی Schema and Data قرار بدید و روی دکمه Ok کلیک کنید:

||http://dba.tosinso.com/files/get/4a2541a5-8c42-444d-8984-13e02f3e4fb2||

||http://dba.tosinso.com/files/get/fd6f82c6-1639-41ce-954b-f54d2d8764a3||

در نهایت بر اساس نیازتون یکی از گزینه های Save to file یا Save to clipboard و یا Save to new query window رو انتخاب کنید و روی دکمه Next کلیک کنید و در پنجره بعدی هم روی Next کلیک کنید. با این کار Script شما برای ایجاد بانک به همراه داده ها ایجاد خواهد شد که با اجرای این Script رو کامپیوتر بانک شما ایجاد میشه. از این روش بیشتر برای انتقال اطلاعات از نسخه های جدیدتر SQL به نسخه های قدیمی تر استفاده میشه.

البته موارد دیگه ای هم مثل Copy Database وجود داره که همین دو تا مورد ذکر شده کار شما رو راه میندازه.

بعد از اینکار از پنجره باز شده میتونید گزینه Script entire database and all database objects را برای اسکریپت کردن کل بانک و یا Select specific database objects برای انتخاب کردن موارد دلخواه را انتخاب کنید:

دوست عزیز، شما به دو صورت می تونید بانک رو انتقال بدید، یکی تهیه کپی پشتیبان از بانک و Restore کردن آن روی مقصد هست. پیشنهاد می کنم مقالات دوست خوبم مهندس نصیری را در این باره مطالعه کنید:

# |Backup گیری از SQL Server : معرفی انواع Backup در SQL Server::https://tosinso.com/articles/6038/%d8%a7%d9%86%d9%88%d8%a7%d8%b9-%d8%b1%d9%88%d8%b4-%d9%87%d8%a7%db%8c-%d8%aa%d9%87%db%8c%d9%87-%d9%be%d8%b4%d8%aa%db%8c%d8%a8%d8%a7%d9%86-%d8%a7%d8%b2-SQL-Server-plus-%d8%a7%d9%86%d9%88%d8%a7%d8%b9-Recovery-Model|
# |Backup گیری از SQL Server : معرفی انواع Recovery Model در SQL سرور::https://tosinso.com/articles/6038/%d8%a7%d9%86%d9%88%d8%a7%d8%b9-%d8%b1%d9%88%d8%b4-%d9%87%d8%a7%db%8c-%d8%aa%d9%87%db%8c%d9%87-%d9%be%d8%b4%d8%aa%db%8c%d8%a8%d8%a7%d9%86-%d8%a7%d8%b2-SQL-Server-plus-%d8%a7%d9%86%d9%88%d8%a7%d8%b9-Recovery-Model|

حالت دیگه ایجاد Script از روی بانک به همراه اطلاعات اون هست. برای اینکار، ابتدا بر روی بانک مورد نظر راست کلیک کنید و از قسمت Tasks گزینه Generate Scripts و انتخاب کنید:

||http://dba.tosinso.com/files/get/fa029f2c-21a4-4487-b548-54c54b8d47ae||

بعد از اینکار از پنجره باز شده میتونید گزینه Script entire database and all database objects را برای اسکریپت کردن کل بانک و یا Select specific database objects برای انتخاب کردن موارد دلخواه را انتخاب کنید:

||http://dba.tosinso.com/files/get/d61adc0a-0849-4067-9e2b-a1c52fb92e28||

با کلیک بر روی Next از پنجره باز شده روی دکمه Advance کلیک کرده و از لیست گزینه Types of data to script رو روی Schema and Data قرار بدید و روی دکمه Ok کلیک کنید:

||http://dba.tosinso.com/files/get/4a2541a5-8c42-444d-8984-13e02f3e4fb2||

||http://dba.tosinso.com/files/get/fd6f82c6-1639-41ce-954b-f54d2d8764a3||

در نهایت بر اساس نیازتون یکی از گزینه های Save to file یا Save to clipboard و یا Save to new query window رو انتخاب کنید و روی دکمه Next کلیک کنید و در پنجره بعدی هم روی Next کلیک کنید. با این کار Script شما برای ایجاد بانک به همراه داده ها ایجاد خواهد شد که با اجرای این Script رو کامپیوتر بانک شما ایجاد میشه. از این روش بیشتر برای انتقال اطلاعات از نسخه های جدیدتر SQL به نسخه های قدیمی تر استفاده میشه.

البته موارد دیگه ای هم مثل Copy Database وجود داره که همین دو تا مورد ذکر شده کار شما رو راه میندازه.

با کلیک بر روی Next از پنجره باز شده روی دکمه Advance کلیک کرده و از لیست گزینه Types of data to script رو روی Schema and Data قرار بدید و روی دکمه Ok کلیک کنید:

دوست عزیز، شما به دو صورت می تونید بانک رو انتقال بدید، یکی تهیه کپی پشتیبان از بانک و Restore کردن آن روی مقصد هست. پیشنهاد می کنم مقالات دوست خوبم مهندس نصیری را در این باره مطالعه کنید:

# |Backup گیری از SQL Server : معرفی انواع Backup در SQL Server::https://tosinso.com/articles/6038/%d8%a7%d9%86%d9%88%d8%a7%d8%b9-%d8%b1%d9%88%d8%b4-%d9%87%d8%a7%db%8c-%d8%aa%d9%87%db%8c%d9%87-%d9%be%d8%b4%d8%aa%db%8c%d8%a8%d8%a7%d9%86-%d8%a7%d8%b2-SQL-Server-plus-%d8%a7%d9%86%d9%88%d8%a7%d8%b9-Recovery-Model|
# |Backup گیری از SQL Server : معرفی انواع Recovery Model در SQL سرور::https://tosinso.com/articles/6038/%d8%a7%d9%86%d9%88%d8%a7%d8%b9-%d8%b1%d9%88%d8%b4-%d9%87%d8%a7%db%8c-%d8%aa%d9%87%db%8c%d9%87-%d9%be%d8%b4%d8%aa%db%8c%d8%a8%d8%a7%d9%86-%d8%a7%d8%b2-SQL-Server-plus-%d8%a7%d9%86%d9%88%d8%a7%d8%b9-Recovery-Model|

حالت دیگه ایجاد Script از روی بانک به همراه اطلاعات اون هست. برای اینکار، ابتدا بر روی بانک مورد نظر راست کلیک کنید و از قسمت Tasks گزینه Generate Scripts و انتخاب کنید:

||http://dba.tosinso.com/files/get/fa029f2c-21a4-4487-b548-54c54b8d47ae||

بعد از اینکار از پنجره باز شده میتونید گزینه Script entire database and all database objects را برای اسکریپت کردن کل بانک و یا Select specific database objects برای انتخاب کردن موارد دلخواه را انتخاب کنید:

||http://dba.tosinso.com/files/get/d61adc0a-0849-4067-9e2b-a1c52fb92e28||

با کلیک بر روی Next از پنجره باز شده روی دکمه Advance کلیک کرده و از لیست گزینه Types of data to script رو روی Schema and Data قرار بدید و روی دکمه Ok کلیک کنید:

||http://dba.tosinso.com/files/get/4a2541a5-8c42-444d-8984-13e02f3e4fb2||

||http://dba.tosinso.com/files/get/fd6f82c6-1639-41ce-954b-f54d2d8764a3||

در نهایت بر اساس نیازتون یکی از گزینه های Save to file یا Save to clipboard و یا Save to new query window رو انتخاب کنید و روی دکمه Next کلیک کنید و در پنجره بعدی هم روی Next کلیک کنید. با این کار Script شما برای ایجاد بانک به همراه داده ها ایجاد خواهد شد که با اجرای این Script رو کامپیوتر بانک شما ایجاد میشه. از این روش بیشتر برای انتقال اطلاعات از نسخه های جدیدتر SQL به نسخه های قدیمی تر استفاده میشه.

البته موارد دیگه ای هم مثل Copy Database وجود داره که همین دو تا مورد ذکر شده کار شما رو راه میندازه.
دوست عزیز، شما به دو صورت می تونید بانک رو انتقال بدید، یکی تهیه کپی پشتیبان از بانک و Restore کردن آن روی مقصد هست. پیشنهاد می کنم مقالات دوست خوبم مهندس نصیری را در این باره مطالعه کنید:

# |Backup گیری از SQL Server : معرفی انواع Backup در SQL Server::https://tosinso.com/articles/6038/%d8%a7%d9%86%d9%88%d8%a7%d8%b9-%d8%b1%d9%88%d8%b4-%d9%87%d8%a7%db%8c-%d8%aa%d9%87%db%8c%d9%87-%d9%be%d8%b4%d8%aa%db%8c%d8%a8%d8%a7%d9%86-%d8%a7%d8%b2-SQL-Server-plus-%d8%a7%d9%86%d9%88%d8%a7%d8%b9-Recovery-Model|
# |Backup گیری از SQL Server : معرفی انواع Recovery Model در SQL سرور::https://tosinso.com/articles/6038/%d8%a7%d9%86%d9%88%d8%a7%d8%b9-%d8%b1%d9%88%d8%b4-%d9%87%d8%a7%db%8c-%d8%aa%d9%87%db%8c%d9%87-%d9%be%d8%b4%d8%aa%db%8c%d8%a8%d8%a7%d9%86-%d8%a7%d8%b2-SQL-Server-plus-%d8%a7%d9%86%d9%88%d8%a7%d8%b9-Recovery-Model|

حالت دیگه ایجاد Script از روی بانک به همراه اطلاعات اون هست. برای اینکار، ابتدا بر روی بانک مورد نظر راست کلیک کنید و از قسمت Tasks گزینه Generate Scripts و انتخاب کنید:

||http://dba.tosinso.com/files/get/fa029f2c-21a4-4487-b548-54c54b8d47ae||

بعد از اینکار از پنجره باز شده میتونید گزینه Script entire database and all database objects را برای اسکریپت کردن کل بانک و یا Select specific database objects برای انتخاب کردن موارد دلخواه را انتخاب کنید:

||http://dba.tosinso.com/files/get/d61adc0a-0849-4067-9e2b-a1c52fb92e28||

با کلیک بر روی Next از پنجره باز شده روی دکمه Advance کلیک کرده و از لیست گزینه Types of data to script رو روی Schema and Data قرار بدید و روی دکمه Ok کلیک کنید:

||http://dba.tosinso.com/files/get/4a2541a5-8c42-444d-8984-13e02f3e4fb2||

||http://dba.tosinso.com/files/get/fd6f82c6-1639-41ce-954b-f54d2d8764a3||

در نهایت بر اساس نیازتون یکی از گزینه های Save to file یا Save to clipboard و یا Save to new query window رو انتخاب کنید و روی دکمه Next کلیک کنید و در پنجره بعدی هم روی Next کلیک کنید. با این کار Script شما برای ایجاد بانک به همراه داده ها ایجاد خواهد شد که با اجرای این Script رو کامپیوتر بانک شما ایجاد میشه. از این روش بیشتر برای انتقال اطلاعات از نسخه های جدیدتر SQL به نسخه های قدیمی تر استفاده میشه.

البته موارد دیگه ای هم مثل Copy Database وجود داره که همین دو تا مورد ذکر شده کار شما رو راه میندازه.

در نهایت بر اساس نیازتون یکی از گزینه های Save to file یا Save to clipboard و یا Save to new query window رو انتخاب کنید و روی دکمه Next کلیک کنید و در پنجره بعدی هم روی Next کلیک کنید. با این کار Script شما برای ایجاد بانک به همراه داده ها ایجاد خواهد شد که با اجرای این Script رو کامپیوتر بانک شما ایجاد میشه. از این روش بیشتر برای انتقال اطلاعات از نسخه های جدیدتر SQL به نسخه های قدیمی تر استفاده میشه.

البته موارد دیگه ای هم مثل Copy Database وجود داره که همین دو تا مورد ذکر شده کار شما رو راه میندازه.

پاسخ در 1393/11/08 توسط
1

دوست عزیز اگه طبق روشی که جناب مهندس گفتن شما اسکریپت رو از روی دیتابیس قبلی ساختی الان فقط باید اسکریپت رو اجرا کنی تا هم دیتا و هم Schema انتقال داده بشه.

اگه میخوای روی یه سرور کپی کردن دیتا رو انجام بدی کافیه از اسکریپتی که نوشتم استفاده کنی:

DECLARE @AllTables INT,
					@I INT,
					@Query NVARCHAR(500)
SELECT @AllTables = COUNT(name)  FROM sys.tables
SELECT @I = 1

IF EXISTS ( SELECT * FROM sys.tables WHERE name='MyTempTable')
DROP TABLE MyTempTable

SELECT ROW_NUMBER() OVER ( ORDER BY name) AS ID,
OBJECT_SCHEMA_NAME(object_id)+'.'+name AS name 
INTO MyTempTable FROM sys.tables

IF EXISTS( SELECT * FROM sys.databases WHERE name='MyNewDatabase')
DROP DATABASE MyNewDatabase

CREATE DATABASE MyNewDatabase
WHILE ( @I <= @AllTables )
BEGIN

SELECT @Query =  name FROM MyTempTable
WHERE ID=@I 

SELECT @Query = 'SELECT * INTO '+'MyNewDatabase.'+@Query+' FROM '+@Query
EXEC(@Query)
SELECT @I+= 1

END

DROP TABLE MyTempTable

البته این اسکریپت فقط دیتا رو انتقال میده به دیتابیس جدیدی به اسم MyNewDatabase و Relation ها رو منتقل نمیکنه.

چون سوال شما گنگ بود من دقیق نفهمیدم شما میخوای چیکار کنی.

اگه میخوای فقط جداول و رابطه های جداول و Schema رو منتقل کنی ( یعنی بدون اطلاعات موجود در جدول ها ) کافیه بعد از اجرای اسکریپت اولیه ات بری و با دستور:

DELETE FROM TableNames

اطلاعات جداولت رو پاک کنی.

اگه باز به جواب دلخواهت نرسیدی لطفا واضح تر توضیح بده تا بشه بهتر راهنماییت کرد

پاسخ در 1393/11/09 توسط
0

سلام

دیتابیس جدید خالی هست فقط یک دیتابیس ایجاد کردم . می خوام جداول خالی را روی این کپی کنم .

الان اسکریپت جداول را دارم می خوام بریزم روی این دیتا بیس خالی

اجرای اسکریپت را بلد نیستم .

یکی از دوستان فرموده بودند فایل اسکریپت را باز کنم و روی دیتابیس جدید ایجاد شده ّf5 را بزنم . جداول کپی می شود .

ولی بعد از این کار ایراد می گیرد که همه این جداول به این اسم الان موجود هستند . در حالی که دیتابیس جدید کاملا خالی هست .

در صورت امکان شماره تلفن بفرستید . جبران می کنم

پاسخ در 1393/11/09 توسط
0

دوست عزیز احتمالا اسکریپتتون اولش این کوئری رو داره :

USE [OldDatabaseName]
GO

و این کوئری باعث میشه که اسکریپت روی دیتابیس قبلی اجرا بده و ارور بده.اگه خط اول اسکریپتت با این دستور شروع میشه میتونی اون رو حذف کنی و یا به جای OldDatabaseName اسم دیتابیس جدیدت رو بزاری

پاسخ در 1393/12/02 توسط

پاسخ شما