ورود

View Full Version : سوال: انتخاب بانک اطلاعاتی با استفاده از Text Box



f_f_f_f_f
سه شنبه 31 خرداد 1390, 22:23 عصر
سلام چه جوری میشه در وی بی 6 با استفاده از اطلاعات داخلtext box نام بانک اطلاعاتی را انتخاب کرد.
من از کد زیر استفاده میکنم ولی error میده.

Adodc1.ConnectionString = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=DB_1389"
Adodc1.CommandType = adCmdText
Adodc1.RecordSource = "select * from AccSanad1"
Adodc1.Refresh
بانک اطلاعاتی در اس کیو ال 2000می باشد. مثلا اگر در داخلtextbox نام هر کدام از بانکها را دادیم اطلاعات آن بانک استفاده بشه.اسم بانکها به طور مثال DB_1389 و DB_1388 می باشد.
لطفا راهنمایی بکنید.

sanay_esh
سه شنبه 31 خرداد 1390, 22:36 عصر
سلام
کانکشن استرینگ رو بصورت ساده بنویس بهتر جواب میگیری البته نگفتی که چه خطایی میده تا بیشتر راهنمایی کنم

f_f_f_f_f
چهارشنبه 01 تیر 1390, 18:11 عصر
سلام
Adodc1.ConnectionString = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=textbox"
به متن داخل textbox که مسیری که باید اطلاعات را بگیره error میده.البته منظورم از متن داخل textbox نام بانک اطلاعاتیست که نوشته شده.

Restlesa
پنج شنبه 02 تیر 1390, 19:39 عصر
دوست عزیز اول تو فسمت General فرمت یه متغیر از نوع String تعریف کن و بعد محتوای تکست باکست رو بریز توش و بعد جایگزین فپقسمت مربطه کن ببین درست میشه یا نه

f_f_f_f_f
پنج شنبه 02 تیر 1390, 22:02 عصر
سلام مثل عکس اول نوشتم ولی باز error میده.عکس 2 و 3 error برنامه است.

715127151071511

ali190
جمعه 03 تیر 1390, 01:54 صبح
سلام
از طریق کدنویسی زیر که برات نوشتم هم میتونی نام سرور و هم نام دیتابیست رو براساس تکست باکسهات پارامتریک کنی

Dim S As String
S = Me.Text1.Text
Dim dbname As String
dbname = Me.Text2.Text
Adodc1.ConnectionString = "Provider=SQLOLEDB.1;Password=ali;Persist Security Info=True;User ID=123456;Initial Catalog=" & dbname & ";Data Source=" & S
Adodc1.RecordSource = "select * from table1"
Adodc1.Refresh
Set Me.DataGrid1.DataSource = Adodc1

یاعلی

f_f_f_f_f
جمعه 03 تیر 1390, 14:24 عصر
سلام آقای ali190 من کد بالا را امنحان کردم باز خطا میده اگه امکانش هست فقط نام دیتابیس را از textbox بگیره .با تشکر

ali190
جمعه 03 تیر 1390, 15:03 عصر
سلام
این هم فقط نام دیتابیس

Dim dbname As String
dbname = Me.Text2.Text
Adodc1.ConnectionString = "Provider=SQLOLEDB.1;Password=ali;Persist Security Info=True;User ID=123456;Initial Catalog=" & dbname & ";Data Source=نام سرور"
ضمناً نام کاربری و پسورد رو در کانکشن استرینگ درست Set کن
یاعلی

f_f_f_f_f
جمعه 03 تیر 1390, 15:28 عصر
الان این error را میده

71522

ali190
جمعه 03 تیر 1390, 19:01 عصر
سلام
در این کانکشن استرینگی که برات نوشتم :
نام کاربری:123456
پسورد: ali
شما این یوزر رو در sql server ات ایجاد کردی؟
این یوزر رو به دیتابیست اختصاص دادی؟
دسترسی Owner رو روی دیتابیست به این یوزر دادی؟
و ....
یاعلی

f_f_f_f_f
جمعه 03 تیر 1390, 20:03 عصر
سلام
همه این کارها رو کردم ولب باز همون خطای قبلی را میده.حالا نمیشه بدون یوزر و پسورد وارد دیتابیس شد؟چون من با کد بدون یوزر و پسورد وارد میشدم.
Adodc1.ConnectionString = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=DB_1389
"
این کدی که شما دادید قسمت قرمز رنگش error میده.
Dim s As String
s = Me.Text6.Text
Dim dbname As String
dbname = Me.Text5.Text
Adodc1.ConnectionString = "Provider=SQLOLEDB.1;Password="";Persist Security Info=True;User ID=;Initial Catalog=" & dbname & ";Data Source=" & s
Adodc1.RecordSource = "select * from QAccCodeKol"
Adodc1.Refresh
Set Me.DataGrid1.DataSource = Adodc1

ali190
جمعه 03 تیر 1390, 21:05 عصر
این نشون میده که کانکشن برقرار شده
مشکل سر select ای هست که داری رو بانکت میزنی
مشکل رو در اینجا بررسی کن :Adodc1.RecordSource = "select * from QAccCodeKol"
نام جدولت درسته:؟
در ضمن چرا اینقدر خودتو میپیچونی؟
تو که میگی با اون کانکشن استرینگ وارد میشدی خوب فقط تیکه آخرش که نام دیتابیست هست رو پارامتریک کن


Adodc1.ConnectionString = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=Catalog=" & dbname & "

فقط نام سرورت کجاست؟

f_f_f_f_f
جمعه 03 تیر 1390, 22:35 عصر
کدی که شما نوشتین را قبلا امتحان کردم تو Adodc1.Refresh خطا میده.نمیدونم چیکار کنم.واقعا گیج شدم.

ali190
شنبه 04 تیر 1390, 00:25 صبح
تنها چیزی که به ذهنم میرسه اینه که سورس و دیتابیست رو آپلود کنی تا برات درستش کنم
میتونی پیغام خصوص هم برام بذاری (در صورتی که نمیخوای سورست رو اینجا آپ کنی)
یاعلی

f_f_f_f_f
شنبه 04 تیر 1390, 15:24 عصر
تنها چیزی که به ذهنم میرسه اینه که سورس و دیتابیست رو آپلود کنی تا برات درستش کنم
میتونی پیغام خصوص هم برام بذاری (در صورتی که نمیخوای سورست رو اینجا آپ کنی)
یاعلی

سلام اینم برنامه
http://www.4shared.com/file/oeNKKSB_/Acc_Data.html

ali190
شنبه 04 تیر 1390, 20:02 عصر
سلام
فایل ارسالی exe هست
لطفاً با فرمت rar یا zip قرار بده
ممنون
یاعلی

f_f_f_f_f
شنبه 04 تیر 1390, 20:38 عصر
http://www.4shared.com/file/LmbgdQdx/Acc_Data.html

ali190
شنبه 04 تیر 1390, 22:55 عصر
سلام
فایلت رو تست کردم
در کمتر از 3 سوت این کار رو کردم
ببین من از بین دیتابیس هات فقط دیتابیس 1388 رو تست کردم (اونی که نامش 1388 هست ، خوب دقت کن)
اول باید محتویات ویزاردی موجود در adodc ات رو حذف کنی
چون میخوای این ارتباط رو با کد برقرار کنی
پس همون اول adodc ات رو از فرم اولت حذف کن ، منظورم فرم start up ات هست
حالا یه adodc جدید و دست نخورده به فرمت اضافه کن ، ok
حالا در داخل فرمت یک textbox بذار ، و خاصیت text اش رو به 1388 یعنی (نام دیتابیست تنظیم کن)
حالا در رویداد form _ load ات این کدها رو بنویس :

Dim dbname As String
dbname = Me.Text5.Text
Adodc1.ConnectionString = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=" & dbname & " "
Adodc1.CommandType = adCmdText
Adodc1.RecordSource = "select * from AccCode"
Adodc1.Refresh
فقط خواهشاً یه مقدار دقت کن
بقیه فرمهات رو هم به همین روش بفرست رو هوا :قهقهه:
خیلی آسونه
یاعلی

f_f_f_f_f
یک شنبه 05 تیر 1390, 00:10 صبح
دوست عزیز واقعا ممنونم دستت درد نکنه.فقط دو ،سه تا سوال دارم اگه اجازه بدین بعدا میپرسم.