ورود

View Full Version : گفتگو: بهترین دیتابیس برای جاوا



abdoullah.aberi
جمعه 07 شهریور 1393, 22:05 عصر
سلام دوستان وقتتون بخیر
این تاپیک رو برای این زدم که همه طبق نظره خودشون بگن کدوم دیتابیس رو برای جاوا پیشنهاد میکنن و اینکه نقاط قوت اون دیتابیس رو اعلام کنین و اگه میتونین اموزشی از ان قرار بدین
ممنون از لطفت و بزرگواریتون

ahmad.mo74
جمعه 07 شهریور 1393, 23:00 عصر
ما چیزی به اسم "بهترین دیتابیس برای جاوا" نداریم

abdoullah.aberi
شنبه 08 شهریور 1393, 13:29 عصر
نه منظورم این نبود که کدوم بهترن منظورم این بود مزایا و معایب هر کدومو بیان بگن یعنی شما میای با sql server کار میکنی به چه دلیل , مزایاش چیه نسبت به دیگر دیتابیس ها که شما اینو ترجیح دادی ولی در کل من حرف شما رو قبول دارم بهترین دیتابیس وجود نداره
من معذرت میخوام بابت اشتباه رسوندن منظورم ممنون از پستتون

capitan_nemesis
شنبه 08 شهریور 1393, 13:47 عصر
منم تایید می کنم بهترین برنامه نویسی پایگاه داده وجود نداره
ولی
من شخصا mysql workbench را قبول دارم یه کار هایی باهاش انجام دادم
یه چیزی شبیه sql server فقط سبک تر ، راحت تر ، دم دست تر ، متن باز ، آزاد یا مجانی
هم خودم و هم دوستم از این استفاده می کنیم و راضی هستیم
پایگاه داده هم می توانید در bluefish استفاده کنید

ahmad.mo74
شنبه 08 شهریور 1393, 14:03 عصر
نه منظورم این نبود که کدوم بهترن منظورم این بود مزایا و معایب هر کدومو بیان بگن یعنی شما میای با sql server کار میکنی به چه دلیل , مزایاش چیه نسبت به دیگر دیتابیس ها که شما اینو ترجیح دادی ولی در کل من حرف شما رو قبول دارم بهترین دیتابیس وجود نداره
من معذرت میخوام بابت اشتباه رسوندن منظورم ممنون از پستتون

سلام، خواهش میکنم این حرفا چیه؟

ولی در کل جاوا با هیچ دیتابیسی مشکل نداره و بهترین راهها هم برای کار کردن با دیتابیس در اختیار دولپر گذاشته از JDBC و Hibernate و... و این بستگی به نیاز خود دولپر داره تا از چه دیتابیسی استفاده کنه، من خودم oracle انتخاب اولمه به خاطر performance بالاش به خصوص برای پروژه های enterprise و تحت وب و بعد از اون هم mysql بهترین گزینست به نظر من، البته کسی که کارش دیتابیسه بهتر میدونه این چیزارو...

این لینکها رو هم ببینید: لینک1 (https://blogs.oracle.com/GeorgeTrujillo/entry/mysql_versus_oracle_features_functionality) لینک2 (https://www.udemy.com/blog/oracle-vs-mysql-vs-sql-server/)

cups_of_java
شنبه 08 شهریور 1393, 14:45 عصر
زبان برنامه نویسی جاوا از دیتابیس شما رو مستقل کرده و فرقی نمیکنه با کدوم دیتابیس کار کنید از دید جاوا...
برای اکثر DMBSها درایور های سریع و محکم نوشته شده توی جاوا، بنابراین این سوال مربوط به تالار دیتابیس میشه نه اینجا

dasssnj
چهارشنبه 16 مهر 1393, 17:49 عصر
من می خوام از mysql استفاده کنم.
برای شروع باید چه چیزایی دانلود کنم و چه تنظیماتی انجام بدم؟

محمد فدوی
چهارشنبه 16 مهر 1393, 19:05 عصر
اگه میخوای از سایت خودش دانلود کنی، MySQL Server رو بگیر حتماً، همچنین نصب کردن MySQL Workbench خیلی به راحتی کار کمک می‌کنه. البته برای ویندوز پک‌هایی هست که همرو داخلش داره و من چند وقتیه ازشون استفاده نکردم. بعد از نصب کافیه یه کاربر بسازی و پایگاه داده مورد نظرت رو ایجاد کنی. برای ارتباط با Java هم کافیه Connector مربوط به Java رو بگیری و توی پروژه‌ت قرار بدی. MySQL برای زبان‌ها\فریمورک‌ها ی دیگه هم Connector داره که کار با همشون خیلی ساده‌ست. مثال هم توی اینترنت زیاده.

dasssnj
پنج شنبه 17 مهر 1393, 10:39 صبح
اگه میخوای از سایت خودش دانلود کنی، MySQL Server رو بگیر حتماً، همچنین نصب کردن MySQL Workbench خیلی به راحتی کار کمک می‌کنه. البته برای ویندوز پک‌هایی هست که همرو داخلش داره و من چند وقتیه ازشون استفاده نکردم. بعد از نصب کافیه یه کاربر بسازی و پایگاه داده مورد نظرت رو ایجاد کنی. برای ارتباط با Java هم کافیه Connector مربوط به Java رو بگیری و توی پروژه‌ت قرار بدی. MySQL برای زبان‌ها\فریمورک‌ها ی دیگه هم Connector داره که کار با همشون خیلی ساده‌ست. مثال هم توی اینترنت زیاده.

خب من الان هر دو تا شو نصب کردم. چجوری یه دیتابیس بسازم و اطلاعاتم رو توش بریزم؟
(به نظر میاد SQLite بهتر و ساده تر باشه)

محمد فدوی
پنج شنبه 17 مهر 1393, 12:57 عصر
توی Workbench که خیلی کار ساده‌ست دیگه نمی‌دونم چیو منظورته! اما در مورد MySQL Command Line...
توی پوشه bin اون جایی که MySQL رو نصب کردی یه فایل به اسم mysql.exe هست که اول باید اونو توی متغیر محیطی CLASSPATH قرار بدی. بعدش با این دستور وارد MySQL میشی:



C:\> mysql -p -u root


ازت یه Password می‌پرسه که این Password رو موقع نصب خودت وارد کردی... اینجا هم واردش کن. بعدش که این رو دیدی وارد MySQL Command Line شدی:


mysql>


حالا کاری که باید بکنی اینه که یه User بسازی که دیگه از root استفاده نکنی:


mysql> create user 'someone'@'localhost' identified by password 'mypassword'


حالا می‌تونی Databaseهاتو بسازی و بشون وصل شی که دیگه اگه باش آشنا نیست کتاب آموزش زیاد هست. بهتره این سؤالاتت رو توی بخش MySQL بپرسی اونجا بهتر می‌تونن کمکت کنن.
من معمولا دوست دارم توی Command Line کارامو انجام بدم ولی خب بعضیا اوقات دیگه مجبورم از Workbench یا phpMyAdmin استفاده کنم!


(به نظر میاد SQLite بهتر و ساده تر باشه)
در کل جفتشون قدرت و ضعف خودشون رو دارن. ولی آره قبول دارم SQLite خیلی دم دست تر و خلوت تره. البته خیلی چیزا رو حذف کرده و همچنین مدل ذخیره داده‌هاش هم متفاوته...
نمی‌تونم نظر کارشناسی بدم، نظرم سلیقه‌ایه! من همیشه ترجیح دادم کارامو وابسته به اینکه می‌خواستم چکار کنم با یکی از Databaseهای MySQL،‌ PostgreSQL و MongoDB انجام بدم.
این (http://stackoverflow.com/questions/3630/sqlite-vs-mysql) و این (http://www.digitalocean.com/community/tutorials/sqlite-vs-mysql-vs-postgresql-a-comparison-of-relational-database-management-systems) رو هم ببین.

dasssnj
پنج شنبه 17 مهر 1393, 13:34 عصر
مشکل اینجاست که موقع نصب هیچی ازم نخواست ! فقط همین طوری نصب شد . configuration هم نداشت . وگرنه 4 خط کد نوشتن که مسئله ای نیست .

محمد فدوی
پنج شنبه 17 مهر 1393, 14:23 عصر
قانوناً اگه هیچ Passwordی برای root قرار داده نشه نباید هیچ Passwordی هم از شما بخواد موقع ورود. اون کارایی رو که گفتم انجام بده ببین انجام نمیشه؟!

dasssnj
پنج شنبه 17 مهر 1393, 14:48 عصر
قانوناً اگه هیچ Passwordی برای root قرار داده نشه نباید هیچ Passwordی هم از شما بخواد موقع ورود. اون کارایی رو که گفتم انجام بده ببین انجام نمیشه؟!

نمی دونم چرا ازم پسورد می خواد . دوباره نصبش کردم ولی این بارم جایی را ندیدم که بگه پسورد براش بزار . شاید مشکل از این فایل نصبیشه . شما لینک اونی که خودت داری را بده. (از کجا دانلود کردی؟)

محمد فدوی
پنج شنبه 17 مهر 1393, 15:14 عصر
من از مخازن Ubuntu و ArchLinux نصب می‌کنم! تو این لینک (http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html) توضیح داده چجوری پسورد root رو Reset کنی. ببین کارتو راه میندازه یا نه.

dasssnj
جمعه 18 مهر 1393, 05:49 صبح
من از مخازن Ubuntu و ArchLinux نصب می‌کنم! تو این لینک (http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html) توضیح داده چجوری پسورد root رو Reset کنی. ببین کارتو راه میندازه یا نه.

ممنون . بالاخره مشکل از طریق ریست پسورد حل شد و اطلاعاتمو تونستم توی دیتیبیس وارد کنم.

اما الان یه مشکل دارم :


وقتی با خود workbench مقادیر فارسی وارد می کنم هیچ مشکلی نیست و برنامم هم اونا را درست نشون میده (utf-8 را تنظیم کردم) .
اما وقتی با برنامه ی خودم مقادیر فارسی وارد دیتابیس می کنم به شکل ?????? وارد میشن . مشکل از کد نویسی منه یا از دیتابیس ؟

محمد فدوی
جمعه 18 مهر 1393, 09:11 صبح
منم این مشکل رو داشتم، ولی دقیق یادم نیست چجوری حل می‌شد! ببین Connection String رو به این‌صورت قرار بده ببین حل می‌شه؟! :متفکر:


jdbc:mysql://localhost:3306/DATABASE?characterEncofing=utf8

اگه حل نشد بگو برم یکی از کدهامو نگاه کنم راه مطمئنشو بت بگم.

dasssnj
جمعه 18 مهر 1393, 11:56 صبح
با این کاری که گفتی این ارور را میده :


Incorrect string value: '\xD8\xB9\xD9\x84\xDB\x8C' for column 'name' at row 1


البته فکر کنم منظورت این بود:لبخند: :

jdbc:mysql://localhost:3306/DATABASE?characterEncoding=utf8

dasssnj
جمعه 18 مهر 1393, 12:11 عصر
مشکلم با این حل شد :


jdbc:mysql://localhost:3306/mydb?useUnicode=yes&characterEncoding=UTF-8

و البته هنگام ساختن دیتابیس این فراموش نشه :


DEFAULT CHARACTER SET = utf8
COLLATE = utf8_persian_ci