تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] كيفية انشاء حقل من نوع ترقيم تلقائي بالفيجول بيسك 6
#1
السلام عليكم ورحمة الله وبركاته
لدي سؤال لو سمحتم
يمكننا انشاء جدول بقاعدة بيانات باستخدام الاداة Dao بالكود التالي:
With NewTable
(Fields.Append .CreateField("Id", dbLong)
Fields!ID.Required = True
(Fields.Append .CreateField("Name", dbText, 50)
Fields!NameEN.Required = True
لكن السؤال كيف يمكنني تعيين نوع البيانات ترقيم تلقائي للحقل ID بدلاً من كونه  dbLong
مع فائق الشكر والتقدير
الرد }}}
تم الشكر بواسطة:
#2
الاخ ابو سعود السلام عليكم
عملت لك مثال لانشاء جدول في قاعدة البيانات فيه حقل id  من النوع الترقيم التلقائي وكذلك يمكنك انشاء حقل ترقيم تلقائي في الجدول في حالة عدم وجوده اصلا في الجدول اتمنى ان يكون هو ما طلبته


الملفات المرفقة
.rar   Create Table.rar (الحجم : 11.11 ك ب / التحميلات : 79)
   تحيــــــــــــــــــــــــــــاتي لكـــــــــــــــــــم    
الرد }}}
#3
مشكور جزيل الشكر صديقي السيد الغالي
لو سمحت ممكن تكتب شرح بجانب كل كود موجود إذا ما فيها عذاب لإلك
مشكور مرة أخرى على ما افدتني من معلومات
علماً بأنني انشأت قاعدة البيانات والجدول بالصيغة التالية:
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

وهل المكتبة التي تستخدمها أفضل أم التي أستخدمها
الرد }}}
تم الشكر بواسطة: عبد العزيز البسكري , Ahmed_Mansoor
#4
اخي ابو سعود السلام عليكم
في ما يخص طلبك الاول وضعت توضيح مبسط للاكواد التي ارى انها تحتاج الى توضيح اما بقية الاكواد فهي واضحة واذا كان لديك غموض في احد الاكواد فارجو ان تبينه لي حتى يتم شرحه . اما فيما يخص سؤالك الثاني فارى ان لا فرق مهم بين الطريقتين ما دام كلاهما يحقق المطلوب رغم اني استخدم هذه الطريقة غالبا في مثل هذه الحالات
   تحيــــــــــــــــــــــــــــاتي لكـــــــــــــــــــم    
الرد }}}
#5
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 "هذا الجدول موجود في قاعدة البيانات"
أخي الكريم اضفتلك جملة ما المقصود هنا بالكود الذي لم أفهمه يرجى الرد من قبلك
ولو تكرمت علي بكود إنشاء قاعدة بيانات بدون كلمة مرور وإنشاء قاعدة بيانات مع تمكين كلمة مرور
مشكور يا غالي
الرد }}}
تم الشكر بواسطة:
#6
(26-04-17, 05:03 PM)أبوسعود كتب : 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 "هذا الجدول موجود في قاعدة البيانات"
أخي الكريم اضفتلك جملة ما المقصود هنا بالكود الذي لم أفهمه يرجى الرد من قبلك
ولو تكرمت علي بكود إنشاء قاعدة بيانات بدون كلمة مرور وإنشاء قاعدة بيانات مع تمكين كلمة مرور
مشكور يا غالي
اخي العزيز ابو سعود السلام عليكم
فيما يخص تساؤلاتك اعلاه اطلع على الموضوع على الرابط 
http://arabteam2000-forum.com/index.php?...9%84-adox/
اما فيما يخص طلبك بانشاء قاعدة بيانات بكلمة مرور واخرى بدون كلمة مرور فستجدها في المرفقات


الملفات المرفقة
.rar   Create Database.rar (الحجم : 6.98 ك ب / التحميلات : 61)
   تحيــــــــــــــــــــــــــــاتي لكـــــــــــــــــــم    
الرد }}}
#7
مشكور صديقي كان شرحك كافي ووافي
تقبل خاص تحياتي....
الرد }}}


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] كيفية تشغيل قاعدة بيانات برنامج VB6+Access على شبكة داخليه aboezzat84 3 2,694 21-04-24, 04:12 PM
آخر رد: qqqqqqq
Heart كيفية تغيير نوعية الــ DataBase أبو خالد الشكري 4 289 10-01-24, 10:55 PM
آخر رد: أبو خالد الشكري
  [vb6.0] سؤال حول كيفية عمل زر كوماند داخل عمود Msflexgrid جلال اليمني 5 639 14-09-23, 05:12 AM
آخر رد: جلال اليمني
  [سؤال] كيفية حذف إسم شخص من listbox من دون الضغط على الإسم؟ ihabgh123 2 432 12-06-23, 10:09 PM
آخر رد: ihabgh123
  [vb6.0] كيفية برمجة ادات "Office Ribbon" في الفيجوال بيزك 0.6 Hammam Khalfi 0 441 21-04-23, 03:39 PM
آخر رد: Hammam Khalfi
  تفسير في كريستال ريبور مع فيجوال بيسك و الاكسيس tighrmte 3 668 12-02-23, 02:40 PM
آخر رد: tighrmte
Question [vb6.0] هل دالة Dcount ضمن دوال بيسك 6 ؟؟ Microformt 0 321 04-01-23, 08:33 PM
آخر رد: Microformt
  مشكلة اعادة ترقيم التلقائي في قاعدة بيانات اكسس ahmed201 9 2,894 25-11-22, 12:23 AM
آخر رد: اسلام الكبابى
  كيف نسمى نقطة او مستقيم في فيجوال بيسك 6 سويلم 4 844 12-09-22, 02:59 AM
آخر رد: سويلم
  طلب حل تمارين في فيجوال بيسك devafar23 9 18,567 01-04-22, 12:49 AM
آخر رد: رهف

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


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم