ايران ويج

نسخه‌ی کامل: ارتباط وی بی 6 و mysql
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2
سلام دوستان.
امیدوارم که بنده رو ببخشید که چنین پستی رو می دم ، راستش خود بنده هرچی گشتم چیزی در این مورد پیدا نکردم ، خوب تصمیم گرفتم که این تاپیک رو بزنم تا دوستانی که تازه کارند بتونن راحت کارشون رو با mysql پیش ببرند و در ضمن آموزش اولیه خودم هم چند سوال داشتم.
خوب اول آموزش :
برای ارتباط با mysql توسط vb6 اول از همه نیاز دارید که درایور odbc 3.51 رو نصب کنید خوب چون خود سایت مای اس کیو ال ایران رو تحریم کرده من در زیر فایل installer اش رو آپلود کردم . البته این ورژن 3.51.06 هست .
[attachment=2826]
خوب اول این نرم افزار رو دانلود کنید بعد نصب کنید.
خوب حالا یک پروژه ی جدید وی بی 6 ایجاد کنید .
خوب حالا در منوی Project (بالای بالا) روی قسمت References کلیک کنید . حالا در منویی که باز می شه قسمت Microsoft Remote Data Object 2.0 رو انتخاب کنید و تیک بزنید و بعد دکمه ی OK خوب پس تا انجا این شد :
کد:
VB6 => New Project => Project Menu => References => Microsoft Remote Data Object 2.0 => OK
خوب حالا یک CommandButton به فرم اضافه کنید.
روش دو تا کلیک کنید و بنویسید:
کد:
Dim cnMySql As New rdoConnection
Dim rdoQry  As New rdoQuery
Dim rdoRS   As rdoResultset

' set up a remote data connection
' using the MySQL ODBC driver.
' change the connect string with your username,
' password, server name and the database you
' wish to connect to.

cnMySql.CursorDriver = rdUseOdbc



cnMySql.Connect = "uid=YourUserName;pwd=YourPassword;server=YourServerName;driver={MySQL ODBC 3.51 Driver};
    database=YourDataBase;dsn=;"



cnMySql.EstablishConnection
cnMySql.Close
خوب توجه داشته باشید که اون چند خطی رو که نشون دادم (فاصلشون از باقی بیشتره) باید در وی بی پشت سر هم باشه .
خوب حالا به جای :
YourUserName نام کاربری mysql رو وارد می کنید (در اوکال هاست به صورت پیش فرض root هست)
YourPassword کلمه ی عبور رو وارد می کنید (در لوکال هاست به صورت پیش فرض پسوردی وجود ندارد)
YourServerName آی پی یا url یا نام سرور MySQL را وارد کنید (اگر می خواهید از لوکال هاست استفاده کنید باید localhost راوارد کنید و اگر نه حتما باید آدرس سرور مای اس کیو ال باشد نه آدرس خود سرور)
YourDataBase نام دیتابیس مورد نظرخود را وارد کنید.
خوب برنامه را اجرا کنید و دکمه ی Command1 را فشار دهید .
و نتیجه را مشاهده کنید . (دقت داشته باشید که قبل از اجرای برنامه حتما یک لوکال هاست به همراه mysql نصب کرده باشه که من xampp رو توصیه می کنم)
موفق باشید.

اما سوالم در مورد این است که چه طور می تونم برنامه ای بنویسم که اگر به دیتابیس وصل شد یک پیام بده یا به عکس ؟
با تشکر فراوان.
سلام قربان

آقا شما خودت روی سرور اینترنت امتحان کردی؟

جواب نمیده ها

اگه امتحان کردی بگو تا منم یه خاکی به سرم بریزم
سلام
منم سوال اقا حامد را دارم شما تست کردین؟
سرور رایگان کسی سراغ داره ؟
سلام دوستان .
مشکل رو متوجه شما ، در واقع اشکال از اینجاست که ما پورت مورد نظر رو نمی دونیم که فکر کنم با یک پورت اسکنر بشه حلش کرد .
اما جناب امین خان عزیز در مورد هاست مجانی می تونید این رو امتحان کنید . البته دقت داشته باشید که براوزرتون حتما فایرفاکس باشه .
من خودم یه برنامه نوشتم که با وارد کردن فیلد ها کانکت می شه فقط دقت کنید که قبل از اجرا ی برنامه حتما Microsoft Remote Data Object 2.0 رو در قسمت ریفرنس تیک بزنید و در ضمن اگر فیلد پورت رو خالی بذارید به طور پیشفرض 3306 رو در نظر می گیره .
نکته ی بعد اینکه نتونستم کاری کنم که اگر وصل شد پیام بده (در واقع اگر پیام اشکال در اتصال نده یعنی وصل شدهExclamation) اگر از دوستان کسی بلد بود لطف کنه و سورسش رو بذاره.
خوب اینم برنامه : [attachment=2873]
موفق باشید.
سلام چاکرم

آقا من برنامه شما رو هم تست کردم ولی متاسفانه وصل نمیشه و پیغام زیر رو می ده.

آقا فکر کنم دوباره به مشکا IP های Valid و ناشناخته برخوردیم.

نظر شما چیه؟
بابا من اینو لازم دارم برم به کی بگم آخه.

بیایید یه کاری بکنیم
سلام دوست عزیز
نه مشکل از IP نیست چون که سرور رو شناخته ولی نمی تونه بهش وصل بشه.
دلیلش رو هم بالا توضیح دادم :
دلیلش اینه که این درایور برای اتصال نیاز به پورت داره که به طور پیش فرض 3306 هست و چون شما پورت MySQL سرور مورد نظر رو نداری نمی تونی بهش وصل بشی ، برای این کار باید به ادمین ایمیل بزنی و یا اینکه خودت با یه پورت اسکنر که برنامش تو همین سایت هست از پورت 1 تا 36... جستجو کنی و تک تک پورت های باز رو بررسی کنی .
موفق باشی دوست من.
سلام Agary جان
میشه شما رو یه سرور اپلود کنید و پورتش هم بدست بیارید به ما هم یاد بدید؟
میخوام یه بار خودتون انجام بدید و به سرور وصل بشید.
خیلی ممنون میشم همچین کاری کنید و یاد ما هم بدید.
موفق باشید
سلام دوستان

آقا من با vb.net هم تست کردم می گه که نمی تونه به سرور متصل بشه

مثل این میمونه که اصلا سرور وجود ندارد.

از نظر من IP مشکل داره

از دوستان هم درخواست بررسی دارم ممنون

یا حق
سلام
من یه سوال داشتم راجع به ارسال مقادیر باکس های متنی به mysql از طریق vb . ببینید ما تو php به راحتی می تونیم از این کد ر زیر استفاده کنیم :
کد:
mysql_query("insert into tbl1 values('$val')");

اما چرا تو vb نمی شه متغیر رو به query اضافه کرد؟ یعنی vb نمی تونه درک کنه که ما می خوایم مقدار داخل متغیر رو ارسال کنیم ؟

راه حل چیه؟؟
سلام به همگی

من جواب سوال خودم رو پیدا کردم ، به این صورت :
کد:
cnMySql.Execute "insert  into tbl1 values('" & Text1.Text & "');"

اما یک سوال دیگه . چه طوری میشه کاری کرد که متنی که توی textbox تو vb به فارسی تایپ می شه و از طریق text1.text در کد بالا منتقل می شه به جدول در پایگاه داده ی mysql ، به صورت فارسی منتقل بشه ؟ یعنی تبدیل نشه به ansi ؟ می خولم بدونم میشه کاری کرد که VB به صورت اتوماتیک charset رو به ANSI تبدیل نکنه و unicode باشه؟
سلام
پاسخ سوال آخری که پرسیده بودم :


ببینید Vb به طور اتوماتیک charset رو به ansi تبدیل می کنه . و ansi هم به همون زبان کامپیوتر (سیستم عامل) برای برنامه های unicode برمی گرده . بنابراین اگر زبان روبه فارسی تغییر بدیم مشکل حل میشه. حالا من که اینا رو می دونستم چرا مشکلم حل نمی شد و می پرسیدم ؟ به خاطر اینکه پس از ست کردن زبان فارسی سیستم رو hibernate کرده بودم تا الان به جای shut down یا restart ... خلاصه که حل شد.
صفحه‌ها: 1 2