تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
كيفية الإغلاق التام لـقاعدة بيانات SQL
#1
Brick 
يا مرحبا ويا مسهلا بكل المتابعين والمبرمجين


حقيقة أنا صادفتني مشكلة (عويصة) حاولت أستخدم فيها خبراتي ولم تنجح !

كما أني حاولت البحث في (الشبكة العنكبوتية) فلم أجد أي   تحل مشكلتي  Smile

المشكلة هي أن قاعدة بيانات برنامجي SQL فيها أوامر معينة لعمل DeAttach لقاعدة لبيانات
ولكن البرنامج لا يقوم بعمل DeAttach إذا كانت قاعدة البيانات تعمل !

 ولكن عندما أقوم بإعادة تشغيل البرنامج ، وأقوم بوضع أوامر DeAttach قبل تشغيل قاعدة البيانات فإن الأمور تكون تمام
ويتم عمل DeAttach بكل سهولة .

فالرجاء مساعدتي في الحصول على أوامر إيقاف عمل قاعدة البيانات نهائيا ؛ لأتمكن بذلك من عمل DeAttach دون أن أضطر لإعادة تشغيل البرنامج في كل مرة .

▒▓ ولكم خالص التحية والمحبة والاحترام  
الرد }}}
تم الشكر بواسطة: سعود , جيولوجي مبتدئ
#2
جرب التالي
ALTER DATABASE [DatabaseName] SET SINGLE_USER WITH ROLLBACK IMMEDIATE
الرد }}}
#3
(01-08-22, 04:05 PM)aljzazy كتب : جرب التالي
ALTER DATABASE [DatabaseName] SET SINGLE_USER WITH ROLLBACK IMMEDIATE


شكرا لك أخي العزيز  aljzazy على محاولتك لمساعدتي

ولكن أين أضع هذا الكود ؟

أنا حاولت أن أضعه في Button1 لكنه رفضه ووضع تحت الكود خطا أحمرًا !

الرد }}}
#4
الطريقة ان تخزن هذا الكود بعد التعديل في متغير نصي ليكن مثلاً (sqlString)
ثم تعطي امر للكائن الذي عرفته على انه (SqlCommand) ليقوم  بتنفيذ هذا الامر النصي. ليكن مثلاً (sqlCmnd)
فيصبح الكود :

كود :
sqlCmnd.CommandText = sqlString
قال صلى الله عليه وسلم: 
«كلمتان خفيفتان على اللسان 
ثقيلتان في الميزان،حبيبتان إلى الرحمن: 
سبحان الله وبحمده، سبحان الله العظيم».
الرد }}}
#5
اخي الفاضل :

الامر الذي ذكره الأخ aljazazy هو امر بلغة Sql ولا يمكن كتابته مباشرة في اجراء الزر ولكن يتم مثل التالي :
PHP كود :
Dim con As SqlConnection = New SqlConnection("Data Source=localhost; Integrated Security=SSPI; Initial Catalog=Database")
Dim cmd As SqlCommand

cmd 
= New SqlCommand(" ALTER DATABASE [DatabaseName] SET SINGLE_USER WITH ROLLBACK IMMEDIATE ;"con)
con.Open()
cmd.ExecuteNonQuery()
con.Close() 
الرد }}}
#6
(01-08-22, 04:05 PM)aljzazy كتب : جرب التالي
ALTER DATABASE [DatabaseName] SET SINGLE_USER WITH ROLLBACK IMMEDIATE
فعلا الكود ممتاز جدا اسندت له جملة اتصال من دون مسمى قاعدة بيانات و تم بشكل جميل.
اللهم إني أعوذ بك من غلبة الدين وغلبة العدو، اللهم إني أعوذ بك من جهد البلاء ومن درك الشقاء ومن سوء القضاء ومن شماتة الأعداء
اللهم اغفر لي خطيئتي وجهلي، وإسرافي في أمري وما أنت أعلم به مني، اللهم اغفر لي ما قدمت وما أخرت، وما أسررت وما أعلنت وما أنت أعلم به مني، أنت المقدم وأنت المؤخر وأنت على كل شيء قدير
الرد }}}
#7
(01-08-22, 06:31 PM)Jounior_P كتب : اخي الفاضل :

الامر الذي ذكره الأخ aljazazy هو امر بلغة Sql ولا يمكن كتابته مباشرة في اجراء الزر ولكن يتم مثل التالي :
PHP كود :
Dim con As SqlConnection = New SqlConnection("Data Source=localhost; Integrated Security=SSPI; Initial Catalog=Database")
Dim cmd As SqlCommand

cmd 
= New SqlCommand(" ALTER DATABASE [DatabaseName] SET SINGLE_USER WITH ROLLBACK IMMEDIATE ;"con)
con.Open()
cmd.ExecuteNonQuery()
con.Close() 


أشكرك شكرا جزيلا (بحجم السماء) أخي Jounior_P ، وكذلك أخي العزيز aljzazy على الكود
أنا طبعا عدلت الكود على حسب البرنامج الذي عندي
ولكن للأسف تظهر الرسالة التالي ، علمًا بأن مسار قاعدة البيانات صحيح !
إلا إذا كان هناك سبب آخر هو الذي كان سببا في إظهار رسالة الخطأ
وهذه هي رسالة الخطأ :



وهذا هو الكود الذي عدلته :
كود :
       Dim DBName As String = "D:\VB.net Test\Alwan.mdf"

       Dim con3 As SqlConnection = New SqlConnection("Data Source=" + My.Computer.Name + "; Integrated Security=SSPI; Initial Catalog= " & DBName & "")
       Dim cmd2 As SqlCommand

       cmd2 = New SqlCommand(" ALTER DATABASE [ " & DBName & " ] SET SINGLE_USER WITH ROLLBACK IMMEDIATE ;", con3)
       con3.Open()
       cmd2.ExecuteNonQuery()
       con3.Close()
الرد }}}
تم الشكر بواسطة: جيولوجي مبتدئ
#8
أخي الفاضل :
راجع صلاحياتك على قاعدة البيانات
الرد }}}
#9
يعني كيف طريقة مراجعتها ؟
هل تقصدد أعدل الكود ؟
ولا إيش بالضبط ؟
الرد }}}
تم الشكر بواسطة: جيولوجي مبتدئ , جيولوجي مبتدئ
#10
(01-08-22, 10:11 PM)أبو خالد الشكري كتب : يعني كيف طريقة مراجعتها ؟
هل تقصدد أعدل الكود ؟
ولا إيش بالضبط ؟

جرب اسناد جملة اتصال من دون قاعدة بيانات:
PHP كود :
   Private strd As String "Data Source=(local)\SQLEXPRESS;Integrated Security=True;MultipleActiveResultSets=True;" 
اللهم إني أعوذ بك من غلبة الدين وغلبة العدو، اللهم إني أعوذ بك من جهد البلاء ومن درك الشقاء ومن سوء القضاء ومن شماتة الأعداء
اللهم اغفر لي خطيئتي وجهلي، وإسرافي في أمري وما أنت أعلم به مني، اللهم اغفر لي ما قدمت وما أخرت، وما أسررت وما أعلنت وما أنت أعلم به مني، أنت المقدم وأنت المؤخر وأنت على كل شيء قدير
الرد }}}
تم الشكر بواسطة: جيولوجي مبتدئ


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  كيفية منع ظهور الأخطاء من إعدادات البيسيك mmaalmesry 2 847 29-08-25, 10:30 AM
آخر رد: mmaalmesry
  كيفية جلب أسماء الأعمدة بجدول من جداول sql heem1986 2 745 17-08-25, 09:15 PM
آخر رد: heem1986
  كيفية حفظ إعدادات البرنامج بحيث لا تتغير أحمد إبراهيم سعد 4 3,001 06-08-25, 06:34 PM
آخر رد: Taha Okla
  مساعدة في كيفية ترحيل البيانات من داتا قريدفيو إلى داتا قريدفيو في فيجوال بيسك ahmedfa71 13 2,217 09-07-25, 11:24 PM
آخر رد: أبو خالد الشكري
  [Acces2007] مشكلة ملف قاعدة بيانات access للقراءة فقط mmaalmesry 11 1,452 29-04-25, 08:55 PM
آخر رد: mmaalmesry
  مشكلة عدم قراءة قاعدة بيانات MS access 0 422 29-03-25, 01:58 PM
آخر رد: ibraa939
  مشكلة عدم قراءة قاعدة بيانات MS access 0 353 29-03-25, 01:57 PM
آخر رد: ibraa939
  مشكلة عدم قراءة قاعدة بيانات MS access 0 288 29-03-25, 01:57 PM
آخر رد: ibraa939
  طريقة طباعة ملف pdf بقاعدة بيانات sql heem1986 0 518 25-02-25, 09:31 AM
آخر رد: heem1986
  ادخال درجات الطلاب لقاعدة بيانات اكسس .. مساعدة Tajaldeen 9 2,750 07-02-25, 07:59 PM
آخر رد: الورد2

التنقل السريع :


يقوم بقرائة الموضوع: