![]() |
|
[سؤال] كيفية انشاء حقل من نوع ترقيم تلقائي بالفيجول بيسك 6 - نسخة قابلة للطباعة +- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb) +-- قسم : قسم لغات البرمجة الاخرى (http://vb4arb.com/vb/forumdisplay.php?fid=4) +--- قسم : قسم لغة vb6.0 (http://vb4arb.com/vb/forumdisplay.php?fid=18) +---- قسم : قسم أسئلة vb6.0 (http://vb4arb.com/vb/forumdisplay.php?fid=28) +---- الموضوع : [سؤال] كيفية انشاء حقل من نوع ترقيم تلقائي بالفيجول بيسك 6 (/showthread.php?tid=20150) |
كيفية انشاء حقل من نوع ترقيم تلقائي بالفيجول بيسك 6 - أبوسعود - 25-04-17 السلام عليكم ورحمة الله وبركاته لدي سؤال لو سمحتم يمكننا انشاء جدول بقاعدة بيانات باستخدام الاداة Dao بالكود التالي: With NewTable (Fields.Append .CreateField("Id", dbLong) Fields!ID.Required = True (Fields.Append .CreateField("Name", dbText, 50) Fields!NameEN.Required = True لكن السؤال كيف يمكنني تعيين نوع البيانات ترقيم تلقائي للحقل ID بدلاً من كونه dbLong مع فائق الشكر والتقدير RE: كيفية انشاء حقل من نوع ترقيم تلقائي بالفيجول بيسك 6 - السيد الغالي - 26-04-17 الاخ ابو سعود السلام عليكم عملت لك مثال لانشاء جدول في قاعدة البيانات فيه حقل id من النوع الترقيم التلقائي وكذلك يمكنك انشاء حقل ترقيم تلقائي في الجدول في حالة عدم وجوده اصلا في الجدول اتمنى ان يكون هو ما طلبته RE: كيفية انشاء حقل من نوع ترقيم تلقائي بالفيجول بيسك 6 - أبوسعود - 26-04-17 مشكور جزيل الشكر صديقي السيد الغالي لو سمحت ممكن تكتب شرح بجانب كل كود موجود إذا ما فيها عذاب لإلك مشكور مرة أخرى على ما افدتني من معلومات علماً بأنني انشأت قاعدة البيانات والجدول بالصيغة التالية: Private Sub Command2_Click() Dim cat As New ADOX.Catalog Set DBobj = CreateDatabase(App.Path & "\Sony.mdb", dbLangArabic, dbEncrypt) Set NewTable = DBobj.CreateTableDef("tb_Channal") With NewTable 2- إضافة الحقول إلى الجدول .Fields.Append .CreateField("Id", dbLong) .Fields!ID.Required = True .Fields.Append .CreateField("NameEN", dbText, 50) .Fields!NameEN.Required = True .Fields.Append .CreateField("Frequency", dbLong) .Fields.Append .CreateField("VideoPID", dbLong) .Fields.Append .CreateField("AudioPID", dbLong) .Fields.Append .CreateField("PCRPID", dbLong) 3- إنشاء فهرس جديد وتعيينه كمفتاح رئيسي وإضافته إلى الجدول Set NewIndex = .CreateIndex("PrimaryKey") NewIndex.Fields.Append .CreateField("Id") NewIndex.Primary = True .Indexes.Append NewIndex End With 4- حفظ الجدول في قاعدة البيانات DBobj.TableDefs.Append NewTable DBobj.Close End Sub وهل المكتبة التي تستخدمها أفضل أم التي أستخدمها RE: كيفية انشاء حقل من نوع ترقيم تلقائي بالفيجول بيسك 6 - السيد الغالي - 26-04-17 اخي ابو سعود السلام عليكم في ما يخص طلبك الاول وضعت توضيح مبسط للاكواد التي ارى انها تحتاج الى توضيح اما بقية الاكواد فهي واضحة واذا كان لديك غموض في احد الاكواد فارجو ان تبينه لي حتى يتم شرحه . اما فيما يخص سؤالك الثاني فارى ان لا فرق مهم بين الطريقتين ما دام كلاهما يحقق المطلوب رغم اني استخدم هذه الطريقة غالبا في مثل هذه الحالات RE: كيفية انشاء حقل من نوع ترقيم تلقائي بالفيجول بيسك 6 - أبوسعود - 26-04-17 Dim strCon As String Dim DataFile As String Dim cn As ADODB.Connection Dim cat As New ADOX.Catalog ماالمقصود هنا بـcatalog Dim NewTable As ADOX.Table Dim Indx As ADOX.Index Dim a On Error GoTo TableErr DataFile = App.Path + "\db1.mdb" Set cn = New ADODB.Connection strCon = "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" & DataFile & ";" cn.Open strCon Set cat.ActiveConnection = cn مالمقصود هنا Set NewTable = New ADOX.Table تحديد اسم الجدول في قاعدة البيانات ويجب ان يكون غير موجود أصلاً في قاعدة البيانات a = InputBox("حدد اسم الجدول يجب ان يكون غير موجود في قاعدة البيانات") NewTable.Name = a 'انشاء الحقول في الجدول With NewTable.Columns .Append "id", adInteger عدد صحيح طويل .Append "EmployeeName", adVarWChar, 30 'نص .Append "City", adVarWChar, 20 ''نص .Append "Address", adVarWChar, 40 'نص .Append "Phone", adVarWChar, 15 'äنص With !id Set .ParentCatalog = cat ما المقصود هنا .Properties("Autoincrement") = True 'ترقيم تلقائي End With With !EmployeeName Set .ParentCatalog = cat .Properties("Nullable") = False ما المقصود هنا .Properties("Jet OLEDB:Allow Zero Length") = False ما المقصود هنا End With End With cat.Tables.Append NewTable 'حفظ الجدول Set Indx = New ADOX.Index 'لانشاء مفتاح اساسي Indx.Name = "PrimaryKey" Indx.PrimaryKey = True Indx.Columns.Append "id" ما المقصود هنا NewTable.Indexes.Append Indx ما المقصود هنا Set Indx = Nothing Set NewTable = Nothing Set cat = Nothing Exit Sub TableErr: MsgBox "هذا الجدول موجود في قاعدة البيانات" أخي الكريم اضفتلك جملة ما المقصود هنا بالكود الذي لم أفهمه يرجى الرد من قبلك ولو تكرمت علي بكود إنشاء قاعدة بيانات بدون كلمة مرور وإنشاء قاعدة بيانات مع تمكين كلمة مرور مشكور يا غالي RE: كيفية انشاء حقل من نوع ترقيم تلقائي بالفيجول بيسك 6 - السيد الغالي - 27-04-17 (26-04-17, 05:03 PM)أبوسعود كتب : Dim strCon As Stringاخي العزيز ابو سعود السلام عليكم فيما يخص تساؤلاتك اعلاه اطلع على الموضوع على الرابط http://arabteam2000-forum.com/index.php?/topic/127139-%D9%85%D8%A7%D8%B0%D8%A7-%D8%AA%D8%B9%D8%B1%D9%81-%D8%B9%D9%86-%D8%A7%D9%84-adox/ اما فيما يخص طلبك بانشاء قاعدة بيانات بكلمة مرور واخرى بدون كلمة مرور فستجدها في المرفقات RE: كيفية انشاء حقل من نوع ترقيم تلقائي بالفيجول بيسك 6 - أبوسعود - 27-04-17 مشكور صديقي كان شرحك كافي ووافي تقبل خاص تحياتي.... |