PDA

View Full Version : ایجاد دیتا بیس روی localdb



alireza4474
شنبه 15 اسفند 1394, 16:34 عصر
سلام
من برای ارایه پروژه به localdb احتیاج داشتم که به صورت امتحانی روی یه سیستم نصبش کردم و یه پایگاه داده روش ایجاد کردم
حالا برای انتقال پایگاه داده از پایگاه داده script تا تمام پایگاه داده روی localdb ایجاد بشه(table,view,sp,...)اما موقع اجرای script روی localdb ارور داد نمیدونم چیکار کنم

البته اینم بگم که موقع اجرای script پایگاه داده فبلی رو پاک کردم چون هم اسم پایگاه داده ای که میخواستم باهاش کار بکنم با پایگاه ی امتحانی که ایجاد کردم روش یکی بود و خب جز اولین کدهای script کد های ایجاد پایگاه داده است که ارور database already exists نده

خواهشا راهنماییم کنین باید به زودی پروژه رو تحویل بدم.

ممنون

parsdarab
دوشنبه 17 اسفند 1394, 09:58 صبح
سلام
پیام خطاش چی بود؟
چطوری اسکریپ می گیرید؟
از چه روشی برای ساخت پایگاه داده استفاده می کنید؟

alireza4474
دوشنبه 17 اسفند 1394, 17:12 عصر
اینجوری اسکریپت میگیرم
139482

وقتی گزینه generate script رو انتخاب میکنم کد های ایجاد پاگاه داده رو هم میسازه دیگه

و اینکه چه خطایی میده ....

راستش خیلی خطا میده انگار به خط به خط کد ها خطا میده

انگار اصلا script رو قبول نمی کنه

parsdarab
سه شنبه 18 اسفند 1394, 09:35 صبح
سلام

اصلا نیازی به پاگ کردن پایگاه داده قبلی ندارید

من از یه پایگاه داده script گرفتم

بعد اول اسکریپت نوشته
USE [DbOne]
اونو تغییر دادم به
USE [Dbtwo]
فقط همین رو تغییر دادم
و یک بانک اطلاعاتی به نام Dbtwo ساختم

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

alireza4474
چهارشنبه 19 اسفند 1394, 12:25 عصر
اونوقت برنامه ای که روش script رو اجرا کردین localdb بود دیگه؟؟؟

چون فکر نکنم برای sql مشکلی باشه اما برای localdb...

ممنون میشم جوابمو بدین..

parsdarab
چهارشنبه 19 اسفند 1394, 12:40 عصر
سلام

منظورت دقیقا از local db چیه؟
آیا اسکریپ رو میخای از طریق نرم افزار(برنامه ای که نوشتی) اجرا کنی یا از طریق خود sql server؟

اگه برای ارائه پروژه میخای بانک اطلاعاتی رو خام کنید.
میتونید از بانک اطلاعاتی یک آپ بگیرد و آنرو resore کنید. از طریق برنامه یا دستور sql

alireza4474
دوشنبه 24 اسفند 1394, 18:21 عصر
خب معلومه local db که قسمت management نداره که بشه بصورت ویزارد این کار رو انجام داد پس مجبورم از طریق برنامه ای که نوشتم اونو اجرا کنم

parsdarab
پنج شنبه 27 اسفند 1394, 13:55 عصر
سلام

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

string script = File.ReadAllText(@"E:\someSqlScript.sql");


// split script on GO command
IEnumerable<string> commandStrings = Regex.Split(script, @"^\s*GO\s*$",
RegexOptions.Multiline | RegexOptions.IgnoreCase);


string sqlConnectionString = @"Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=master;Data Source=FARZAD-PC";


SqlConnection Connection = new SqlConnection(sqlConnectionString);


Connection.Open();
foreach (string commandString in commandStrings)
{
if (commandString.Trim() != "")
{
using (var command = new SqlCommand(commandString, Connection))
{
command.ExecuteNonQuery();
}
}
}
Connection.Close();