تالار گفتمان مانشت
ارتباط SQL Serverبا جاوا - نسخه‌ی قابل چاپ

ارتباط SQL Serverبا جاوا - M.Amin.M - 08 تیر ۱۳۹۳ ۰۹:۵۷ ب.ظ

سلام دوستان

من یه پروژه ساده میخوام بنویسم که میخوام برای اولین بار از SQL Server استفاده کنم.قبلا جاوا رو به Access متصل کرده ام ولی الان نمیدونم چجوری sql رو به پروژه ی جاوام متصل کنم.در محیط نت بینز هم کدنویسی میکنم.

بچه ها مشکل اصلی من توی url دستور (con = DriverManager.getConnection(url هست.من برای اکسز بلدم ولی sqlserver نمیدونم باید چجوری تعریف کنم؟؟؟؟

ممنون میشم کمکم کنین.

ارتباط SQL با جاوا - blackhalo1989 - 08 تیر ۱۳۹۳ ۱۱:۲۰ ب.ظ

با JDBC:
مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.

میتونید از ORM ها هم استفاده کنید ولی اونا هم باز از همین استفاده می کنن.

ارتباط SQL با جاوا - PanizIr - 09 تیر ۱۳۹۳ ۰۳:۳۵ ب.ظ

الان مشکلتون نحوه کد زدن هست یا کارایی که قبل از کد زدن باید انجام بدین؟
این یه نمونه از کد که به نظرم برای شروع اولیه کافی باشه:

مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.


ارتباط SQL با جاوا - M.Amin.M - 10 تیر ۱۳۹۳ ۰۶:۲۲ ب.ظ

خب تا حدودی فهمیدم باید چیکار کنم ولی دیگه به بن بست رسیدم.

sql نسخه اینترپرایز ۲۰۰۸ رو نصب کردم.نام سرور من (local) هست.اومدم یه جدول به اسم PC و یه یوزر به اسم mamad با رمز ۳۵۲۳۷۸۹ تعریف کردم.قسمت security سرور هم تنظیم کردم که با یوزرخارجی (نه یوزرخود سیستم) هم بتونه وارد بشه.موقع نصب SQL هم از instance دیفالت استفاده کردم و خودم instance تعریف نکردم.

توی برنامم هم که بامحیط نت بینز کار میکنم کتابخونه ی SQL Server رو از سایت ماکروسافت دانلود کردم ودرقسمت کتابخونه ی پروژم ادش کردم.
کد زیر رو نوشتم و به نظرم درسته ولی خطا داره که متن خطایی که میده رو هم میذارم.
کدم:
کد:
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
            String connectionUrl = "jdbc:sqlserver://(local):1433;" +
                                    "database=PC;" + "user=mamad;" + "password=3523789";
            Connection con = DriverManager.getConnection(connectionUrl);          
            System.out.println("connected.");

خطایی که میده:

کد:
The TCP/IP connection to the host (local),port 1433 has failed.Error:"null.Verify the connection properties.Make sure that an instance of SQL Server is running on the host and accepting TCP/IP connections at the port.Make sure that TCP connections to the port are not bloched by a firewall.".

بچه ها مشکلش چیه؟
این ۱۴۳۳ چیه؟من از این سر در نیوردم!!!

ارتباط SQL Serverبا جاوا - blackhalo1989 - 10 تیر ۱۳۹۳ ۰۸:۱۱ ب.ظ

۱۴۳۳ پورت sql server هست.
از یه چنین الگویی استفاده کنید:

کد:
String connectionUrl = "jdbc:sqlserver://localhost:1433;" +
         "databaseName=AdventureWorks;user=UserName;password=*****";

منبع:
مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.


RE: ارتباط SQL Serverبا جاوا - M.Amin.M - 10 تیر ۱۳۹۳ ۰۹:۲۵ ب.ظ

(۱۰ تیر ۱۳۹۳ ۰۸:۱۱ ب.ظ)blackhalo1989 نوشته شده توسط:  ۱۴۳۳ پورت sql server هست.
از یه چنین الگویی استفاده کنید:

کد:
String connectionUrl = "jdbc:sqlserver://localhost:1433;" +
         "databaseName=AdventureWorks;user=UserName;password=*****";

منبع:
مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.

تشکر ویژژژژژژژژه!!!
درست شد.
میگما فرقش با دستور قبلی ک من مینوشتم چی بود که اجرا نمیشد؟

ارتباط SQL Serverبا جاوا - blackhalo1989 - 10 تیر ۱۳۹۳ ۱۱:۱۷ ب.ظ

شما باید آی پی و پورتی که dbms داره روش گوش میده رو به علاوه نام db و یک user و password که در dbms تعریف کردید رو به درایور بدید. چون dbms روی سیستم خودتونه باید آدرس سیستم خودتون رو بدید که راحت تره که از loopback ip استفاده کنید که ۱۲۷/۰/۰/۱ هست که البته localhost هم توسط dns به همون مپ شده.
همچنین نام دیتابیس رو هم درست مشخص نکرده بودید.

RE: ارتباط SQL Serverبا جاوا - M.Amin.M - 11 تیر ۱۳۹۳ ۰۳:۲۹ ق.ظ

(۱۰ تیر ۱۳۹۳ ۱۱:۱۷ ب.ظ)blackhalo1989 نوشته شده توسط:  شما باید آی پی و پورتی که dbms داره روش گوش میده رو به علاوه نام db و یک user و password که در dbms تعریف کردید رو به درایور بدید. چون dbms روی سیستم خودتونه باید آدرس سیستم خودتون رو بدید که راحت تره که از loopback ip استفاده کنید که ۱۲۷/۰/۰/۱ هست که البته localhost هم توسط dns به همون مپ شده.
همچنین نام دیتابیس رو هم درست مشخص نکرده بودید.

ممنون از جواب خوبتون.حالا یه چیز دیگه.من وقتی با اکسز برنامه مینوشتم کافی بود فایل mdb رو همراه پروژم ضمیمه کنم و روی یه کامپیوتر دیگه اجرا کنم.بدون اینکه اکسز نصب باشه.توی کدبرنامه هم آدرس پایگاه داده اکسز داده میشه.

الان تو sql چجوریه؟اول اینکه ما آدرسی نمیدیم.بعدم اگه من بخوام پروژمو ببرم رو یه کامپیوتر دیگه یا حتی بخوام بفروشم، چجوری بایدپایگاه داده رو روی یه کامپیوتر جدید به برنامه بشناسونم؟حتما باید SQL Server رو روی کامپیوتر مقصد نصب کنم؟

RE: ارتباط SQL Serverبا جاوا - blackhalo1989 - 11 تیر ۱۳۹۳ ۱۲:۲۶ ب.ظ

(۱۱ تیر ۱۳۹۳ ۰۳:۲۹ ق.ظ)M.Amin.M نوشته شده توسط:  الان تو sql چجوریه؟اول اینکه ما آدرسی نمیدیم.بعدم اگه من بخوام پروژمو ببرم رو یه کامپیوتر دیگه یا حتی بخوام بفروشم، چجوری بایدپایگاه داده رو روی یه کامپیوتر جدید به برنامه بشناسونم؟حتما باید SQL Server رو روی کامپیوتر مقصد نصب کنم؟
شما آدرس dbms رو میدید و اون فایل ها و دسترسی ها و ... رو مدیریت میکنه.
برای ارائه به مشتری حتما باید سرویس sql server رو سیستم مشتری در حال اجرا باشه. نمیدونم نسخه سبکی برای این کار داره یا نه.
برای انتقال پایگاه داده، فکر کنم sql server هر دیتابیس رو تو یک فایل ذخیره میکنه. علاوه بر این اگر دیتابیس شما داده داخلش نیست یا داده کم هست میتونید از دیتابیس dump بگیرید که حاصلش یه فایل sql هست که شامل دستورات تعریف جداول و ذخیره داده در جداول هست، بعد این فایل رو در سیستم مشتری اجرا کنید.

ارتباط SQL Serverبا جاوا - M.Amin.M - 11 تیر ۱۳۹۳ ۰۹:۵۳ ب.ظ

الان که متوجه نمیشم!!!
حالا برناممو کامل بنویسم بعد به اون قسمتا هم میرسیم!!! این برنامه یه برنامه ی حسابداری ساده واسه مغازه بابامه.

تشکر دوستان.

ارتباط SQL Serverبا جاوا - blackhalo1989 - 12 تیر ۱۳۹۳ ۱۱:۲۵ ب.ظ

اگه نمیخواید sql server رو روی سیستم مشتری نصب کنید از یه دیتابیس file based مثل sqlite استفاده کنید.