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

محتاج كود اول ما اعمل فتح للبرنامج اول مره يروح يشيك على قاعدة البيانات هل هيا موجوده ام لا فإذا كانت غير موجودة فإنه ينشأها بواسطة اسكربت مخزن في مسار applaction.path 
و شكرا مقدما
الرد }}}
تم الشكر بواسطة:
#2
طريقة إنشاء قاعدة sql بواسطة script برمجيا وكتابة أسمها بواسطة العميل
الرد }}}
#3
طريقة أخرى من باب التنويع ..
قناتنا على اليوتوب
الرد }}}
#4
اولا مشكور على الرد 
ثانيا أنا قصدي اني انا احفظ ملف الإسكريبت في مجلد Debug و أول ما البرنامج يشتغل يروح يشيك على قاعدة البيانات هل فيها الملف لو فيها خلاص و لو ما فيها يبدأ ينفذ الإسكريبت و ينشئ قاعدة البيانات

المهم انا عملت كود بس المشكله انه بيقرأ الإسكربت كله كسطر واحد و بيديني خطأ 
كود :
 Dim conn As String = "Data Source=.\SQLEXPRESS;Integrated Security=True"
                       Dim script As VariantType = File.ReadAllText(Application.StartupPath + "\SQLScript.sql")
                       Dim co As SqlConnection = New SqlConnection(conn)
                       Dim servdddder As Management.Smo.Server = New Management.Smo.Server(New ServerConnection(co))
                       Dim Server_conn As Microsoft.SqlServer.Management.Smo.Server = New Microsoft.SqlServer.Management.Smo.Server(New ServerConnection(co))
                       servdddder.ConnectionContext.ExecuteNonQuery(script)

بس زي ماهو واضح مش بينفذ الإسكربت 
فيه كود معمول بالc# لو احد من يعرف يحوله للفيجوال يبقى فنان
كود :
   Dim script As String = File.ReadAllText(Application.StartupPath + "\SQLScript.sql")
                       Dim sqlqueries As String = script.Split(New[] {"GO"}, StringSplitOptions.RemoveEmptyEntries)
                       Dim conn As String = "Data Source=.\SQLEXPRESS;Integrated Security=True"
                       Dim CMD1 As New SqlClient.SqlCommand("query", connSQLServer)

                       connSQLServer.Open()

                       foreach(var qurey As VariantType)
                       {
                       CMD1.CommandText = qurey
                       CMD1.ExecuteNonQuery()
                       }
                        connSQLServer.Close()
الرد }}}
تم الشكر بواسطة: asemshahen5 , ابراهيم ايبو
#5
(04-12-19, 06:53 AM)Hamoody كتب : بس زي ماهو واضح مش بينفذ الإسكربت 
فيه كود معمول بالc# لو احد من يعرف يحوله للفيجوال يبقى فنان
كود :
   Dim script As String = File.ReadAllText(Application.StartupPath + "\SQLScript.sql")
                       Dim sqlqueries As String = script.Split(New[] {"GO"}, StringSplitOptions.RemoveEmptyEntries)
                       Dim conn As String = "Data Source=.\SQLEXPRESS;Integrated Security=True"
                       Dim CMD1 As New SqlClient.SqlCommand("query", connSQLServer)

                       connSQLServer.Open()

                       foreach(var qurey As VariantType)
                       {
                       CMD1.CommandText = qurey
                       CMD1.ExecuteNonQuery()
                       }
                        connSQLServer.Close()


الكود بالاعلى ليس بالسي شارب
اين الكود الذي بالسي شارب
الرد }}}
تم الشكر بواسطة:
#6
PHP كود :
   Private Sub Button1_Click(sender As ObjectAs EventArgsHandles Button1.Click
        ExecutesqlFile
("(local)""TestTestD"Application.StartupPath "\SQLScript.sql")
 
   End Sub
    Public Sub ExecutesqlFile
(ByVal SERVAR_NAME_SQL As StringByVal DATABASE_NAME As StringByVal sqlFile As String)
 
       Using connection As New SqlClient.SqlConnection("Server =" SERVAR_NAME_SQL ";database=" DATABASE_NAME ";integrated security=true")
 
           If connection.State ConnectionState.Closed Then connection.Open()
 
           Dim sql As String ""
 
           Using strm As FileStream File.OpenRead(sqlFile)
 
               Dim reader As New StreamReader(strm)
 
               sql reader.ReadToEnd()
 
           End Using
            Dim regex 
As New Regex("^GO"RegexOptions.IgnoreCase Or RegexOptions.Multiline)
 
           Dim lines As String() = regex.Split(sql)
 
           Dim transaction As SqlClient.SqlTransaction connection.BeginTransaction()
 
           Using cmd As SqlClient.SqlCommand connection.CreateCommand()
 
               cmd.Connection connection
                cmd
.Transaction transaction
                ProgressBar1
.Step 1
                For Each line 
As String In lines
                    If line
.Length 0 Then
                        ProgressBar1
.Maximum line.Length 20
                        ProgressBar1
.Value line.Length
                        cmd
.CommandText line
                        cmd
.CommandType CommandType.Text
                        Try
                            cmd
.ExecuteNonQuery()
 
                       Catch generatedExceptionName As SqlClient.SqlException
                            MsgBox
(generatedExceptionName.MessageMsgBoxStyle.Critical"")
 
                           transaction.Rollback()
 
                           Throw
                        End 
Try
 
                   End If
 
               Next
                ProgressBar1
.Value ProgressBar1.Maximum
                MsgBox
("تمت عملية انشاء الجداول و الاستعلامات بنجاح"MsgBoxStyle.Information"")
 
           End Using
            transaction
.Commit()
 
           connection.Close()
 
       End Using
    End Sub 
الرد }}}
تم الشكر بواسطة: 3booody , 3booody


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  لماذا البرنامج يتوقف بدل عرض رسالة الخطأ justforit 0 108 07-12-25, 10:22 AM
آخر رد: justforit
  كيفية حفظ إعدادات البرنامج بحيث لا تتغير أحمد إبراهيم سعد 4 3,004 06-08-25, 06:34 PM
آخر رد: Taha Okla
  [Acces2007] مشكلة ملف قاعدة بيانات access للقراءة فقط mmaalmesry 11 1,484 29-04-25, 08:55 PM
آخر رد: mmaalmesry
Photo لايمكن تعرف على تنسيق قاعدة البيانات الدريساوي 2 700 26-04-25, 12:24 AM
آخر رد: الدريساوي
  مساعدة في طريقة تحميل الفيديوهات المخزنة في قاعدة البيانات foad8920 0 663 24-04-25, 12:58 PM
آخر رد: foad8920
  مشكلة عدم قراءة قاعدة بيانات MS access 0 425 29-03-25, 01:58 PM
آخر رد: ibraa939
  مشكلة عدم قراءة قاعدة بيانات MS access 0 355 29-03-25, 01:57 PM
آخر رد: ibraa939
  مشكلة عدم قراءة قاعدة بيانات MS access 0 292 29-03-25, 01:57 PM
آخر رد: ibraa939
  [سؤال] تغيير الفورم الرئيسي عند تشغيل البرنامج في Visual Studio مع .NET 8؟ silverlord 2 656 09-03-25, 03:52 AM
آخر رد: silverlord
Rainbow [VB.NET] عدد من هم فاتحي البرنامج محمد مسافر 1 418 25-02-25, 07:58 PM
آخر رد: princelovelorn

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


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