PDA

View Full Version : ایجاد table در اکسس توسط وی بی



mdanger
پنج شنبه 23 مرداد 1393, 22:34 عصر
سلام دوستان
چطوری میتونم با زدن دکمه در اکسس table و field ساخته بشه ؟

vbhamed
دوشنبه 27 مرداد 1393, 10:16 صبح
سلام
بهترين راه استفاده از زبان SQL هست
يك كنترل ADODC روي فرم بزاريد و بعد پاكش كنيد (به خاطر اضافه شدن رفرنس) و بعد از كد زير استفاده كنيد، ضمنا يك بانك خالي به نام Test.mdb در درايو C قرار بديد
جهت راهنمايي در مورد دستورات Sql هم از سايت بسيار مفيد زير كمك بگيريد

http://www.w3schools.com/sql/sql_create_table.asp (http://www.w3schools.com/sql/sql_create_table.asp)


Dim cn As New Connection

cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Test.mdb;Persist Security Info=False"
cn.Open
cn.Execute "CREATE TABLE Persons (PersonID int, LastName varchar(255), FirstName varchar(255), Address varchar(255), City VarChar(255))"
cn.Close

mdanger
دوشنبه 27 مرداد 1393, 12:18 عصر
آقا قربون دستت خیلی گلی . دستت درد نکنه خیلی لنگ بودم
فقط یه سوال. من میخوام یک تیبیل درست کنم که نمره هر دانشجو رو بگیره . ولی میخوام تو کريستال ریپورت مثلا اگه رو فرمم داخل وی بی یک دکمه با اسم علی اضافه کنم و دکمه رو فشار بدم کارنامه مربوط به علی نمایش بده . اگه رو دکمه حسن زدم کارنامه مربوط به . حسن . من تو این مورد مشکل دارم میشه کمی راهنماییم کنی تا پروژه رو تکمیلش کنم ؟

ahmad abdoli
دوشنبه 27 مرداد 1393, 21:32 عصر
دوست عزیز شما باید از دستور recordSelectionformula باید استفاده کنی.
اگه توضیح بیشتر می خوای ساختار تیبل رو قرار بده تا توضیح بدم.

vbhamed
دوشنبه 27 مرداد 1393, 23:46 عصر
سلام

در مورد كريستال ريپورت بهتره اون رو به يك كوئري در بانك اطلاعاتي متصل كنيد و به جاي فيلتر كردن داده ها در خود كريستال ريپورت توسط RecordSelectionFormula يا راههاي ديگر، كوئري موجود در بانك رو اصلاح كنيد، اينطوري گزارشگيريتون خيلي سريعتر انجام ميشه مخصوصا تو ركوردهاي زياد

يك كوئري در بانك ايجاد كنيد دستور Sql متناسب با جستجوي دلخواهتون رو در كوئري قرار بدين، براي اينكار از روش پست 2 كمك بگيريد و براي تغيير دادن دستور Sql يك كوئري هم به همون سايت بالا مراجعه كنيد

mdanger
چهارشنبه 29 مرداد 1393, 17:14 عصر
دوست عزیز شما باید از دستور recordSelectionformula باید استفاده کنی.
اگه توضیح بیشتر می خوای ساختار تیبل رو قرار بده تا توضیح بدم.

ساختار تیبیلم اینجوریه که فرض کنید نمرات هر دانشجو دریافت میشه بعدش من میخوام بصورت جداگانه نمرات نمایش داده بشه دقیقه مثل کارنامه تحصیلی که هر کارنامه مختص واسه یه شماره دانشجویی هستش . ممنون میشم راهنماییم کنی
تمامی نمرات دانشجویان تو یک تیبل ذخیره میشه اما هنگام گزارش گیری میخوام کارنامه مخصوص به اون فرد یا شماره دانشجویی نمایش بده

ahmad abdoli
چهارشنبه 29 مرداد 1393, 17:44 عصر
خوب دوست عزیز شما اگه دو تا تیبل مثلا به اسم Students و Score داشته باشی و توی تیبل Student فیلدی به نام ID باید یه فیلد هم به نام Student_Iِ توی تیبلScore داشته باشی و زمان ورود اطلاعات اون ID رو توی کد نویسی به رکورد اضاف کنی. با اوضاع شما زمان طراحی گزارش باید هر دو تیبل رو به کریستال اضاف کنید و توی دستور باز کردن گزارش اینطوری می نویسی

CrCardex.RecordSelectionFormula = "{Studend.ID} =" & Adodc1.Recordset.Fields("ID")

Adodc هم به تیبل Student وصله.