بمب منطقی
چهارشنبه 27 فروردین 1393, 10:50 صبح
با سلام.
بنده به تازگی با استفاده از Eclipse IDE ، اندروید کار می کنم و برنامه نویس Asp.net هم هستم.از آنجا که در این تالار بعضی از دوستان ، در کار با SqlServer بدون استفاده از WebService و با استفاده از درایور JDBC دارای اشکال می باشند(و خود من نیز جزو این افراد بودم) با تحقیق در سایت های مختلف ، به روشی کامل و تست شده تونستم برسم که در ذیل بصورت مرحله به مرحله بیان میکنم.
نکته: JDBC درایوری جهت ارتباط با دیتابیس SQL Server می باشد که در jTDS API ارائه شده است. نسخه 3 این درایور با نسخه های 6.5 ، 7 ، 2000 ، 2005 ، 2008 و 2012 SQLServer می تواند کار کند.ولی بدلیل بعضی مشکلاتی که من به آنها برخورد کردم نسخه 1.2.7 درایور JDBC رو انتخاب نمودم.
1- Eclipse من نسخه INDIGO و ADT نسخه 18.0.0 و JDK نسخه 1.6u45 می باشد
2- jTDS و دقیقا نسخه 1.2.7 رو از این لینک (http://sourceforge.net/projects/jtds/files/jtds/1.2.7/jtds-1.2.7-dist.zip/download) دانلود کنید و پس از دانلود ، فایل را unPack کرده و فایل jtds-1.2.7.jar رو به پوشه lib پروژتون اضافه کنید (اگر پوشه lib در پروژتون وجود نداشت با راست کلیک بر روی نام پروژه و از طریق New->Folder اونو ایجاد کنید)
3- بر روی فایل jtds-1.2.7.jar در پوشه lib راست کلیک کرده و روی Build Path -> Add to Build Path کلیک کنید.
4-دوباره بر روی فایل فوق راست کلیک کرده و اینسری بر روی Build Path ->Configure Build Path کلیک کنید و در پنجره باز شده به تب Order and Export رفته و در لیست داخل آن گزینه jtds-1.2.7.jar - SQLtest/lib را تیک بزید و سپس OK بزنید تا پنجره بسته شود.
5-حالا میتوانید با استفاده ازFunction ذیل اطلاعات DataBase ای به مشخصات زیر را بخوانید:
SQL Server2008R2: DBMS
نام پایگاه داده: Cake
نام کاربری دسترسی به سرور (دقت کنید که نام کاربری کاربر پایگاه داده نیست) : sa
رمز عبور دسترسی به سرور: 123
نام جدول مورد نظر: Groups
اولین فیلد جدول : از نوع int
دومین فیلد جدول : از نوع nvarchar
سومین فیلد جدول : از نوع nvarchar
private void FetchDBdata()
{
try
{
log.i("Package", "open");
Class.forName("net.sourceforge.jtds.jdbc.Driver").newInstance();
Log.i("Connection", "open");
Connection DbConn = DriverManager.getConnection("jdbc:jtds:sqlserver://192.168.1.25;databaseName=Cake;", "sa", "123");
Statement stmt = DbConn.createStatement();
Log.i("Table", "fetch");
ResultSet reset = stmt.executeQuery("select * from Groups");
Log.i("Row", "Display");
while (reset.next())
{
Log.i("Row Output", reset.getInt(1) + " " + reset.getString(2) + " " + reset.getString(3));
}
DbConn.close();
}
catch (Exception ex)
{
Log.e("Error", ex.getMessage().toString());
}
}
امیدوارم این مطلب برای دوستان مفید واقع بشه.موفق باشید
بنده به تازگی با استفاده از Eclipse IDE ، اندروید کار می کنم و برنامه نویس Asp.net هم هستم.از آنجا که در این تالار بعضی از دوستان ، در کار با SqlServer بدون استفاده از WebService و با استفاده از درایور JDBC دارای اشکال می باشند(و خود من نیز جزو این افراد بودم) با تحقیق در سایت های مختلف ، به روشی کامل و تست شده تونستم برسم که در ذیل بصورت مرحله به مرحله بیان میکنم.
نکته: JDBC درایوری جهت ارتباط با دیتابیس SQL Server می باشد که در jTDS API ارائه شده است. نسخه 3 این درایور با نسخه های 6.5 ، 7 ، 2000 ، 2005 ، 2008 و 2012 SQLServer می تواند کار کند.ولی بدلیل بعضی مشکلاتی که من به آنها برخورد کردم نسخه 1.2.7 درایور JDBC رو انتخاب نمودم.
1- Eclipse من نسخه INDIGO و ADT نسخه 18.0.0 و JDK نسخه 1.6u45 می باشد
2- jTDS و دقیقا نسخه 1.2.7 رو از این لینک (http://sourceforge.net/projects/jtds/files/jtds/1.2.7/jtds-1.2.7-dist.zip/download) دانلود کنید و پس از دانلود ، فایل را unPack کرده و فایل jtds-1.2.7.jar رو به پوشه lib پروژتون اضافه کنید (اگر پوشه lib در پروژتون وجود نداشت با راست کلیک بر روی نام پروژه و از طریق New->Folder اونو ایجاد کنید)
3- بر روی فایل jtds-1.2.7.jar در پوشه lib راست کلیک کرده و روی Build Path -> Add to Build Path کلیک کنید.
4-دوباره بر روی فایل فوق راست کلیک کرده و اینسری بر روی Build Path ->Configure Build Path کلیک کنید و در پنجره باز شده به تب Order and Export رفته و در لیست داخل آن گزینه jtds-1.2.7.jar - SQLtest/lib را تیک بزید و سپس OK بزنید تا پنجره بسته شود.
5-حالا میتوانید با استفاده ازFunction ذیل اطلاعات DataBase ای به مشخصات زیر را بخوانید:
SQL Server2008R2: DBMS
نام پایگاه داده: Cake
نام کاربری دسترسی به سرور (دقت کنید که نام کاربری کاربر پایگاه داده نیست) : sa
رمز عبور دسترسی به سرور: 123
نام جدول مورد نظر: Groups
اولین فیلد جدول : از نوع int
دومین فیلد جدول : از نوع nvarchar
سومین فیلد جدول : از نوع nvarchar
private void FetchDBdata()
{
try
{
log.i("Package", "open");
Class.forName("net.sourceforge.jtds.jdbc.Driver").newInstance();
Log.i("Connection", "open");
Connection DbConn = DriverManager.getConnection("jdbc:jtds:sqlserver://192.168.1.25;databaseName=Cake;", "sa", "123");
Statement stmt = DbConn.createStatement();
Log.i("Table", "fetch");
ResultSet reset = stmt.executeQuery("select * from Groups");
Log.i("Row", "Display");
while (reset.next())
{
Log.i("Row Output", reset.getInt(1) + " " + reset.getString(2) + " " + reset.getString(3));
}
DbConn.close();
}
catch (Exception ex)
{
Log.e("Error", ex.getMessage().toString());
}
}
امیدوارم این مطلب برای دوستان مفید واقع بشه.موفق باشید