PDA

View Full Version : سوال: ارتباط با دیتا بیس در SQL SERVER2012 در اندروید



heyoo64
شنبه 05 اردیبهشت 1394, 08:53 صبح
سلام دوستان، میخوام به dbدر sqlserver که تحت شبکه است کانکت شم ولی نمیشه، این کد:
package com.shokouhi.masterconnecting;


import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.widget.Toast;
import com.shokouhi.masterconnecting.R.string;



public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

Connection conn=null;
try
{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
String url = "jdbc:microsoft:sqlserver://nayebsafety.ir:1433;DatabaseName=nayebsaf_na";
String user = "nayebsaf_fffff";
String password = "14741aS";
conn=DriverManager.getConnection(url, user, password);
Statement stmt = conn.createStatement();
String query = "SELECT * from footer";
ResultSet result = stmt.executeQuery(query);

Toast.makeText(MainActivity.this, "Successful" , Toast.LENGTH_LONG).show();


}
catch(Exception e)
{

Toast.makeText(MainActivity.this, "No Connect" , Toast.LENGTH_LONG).show();

}
finally
{
if(conn != null)
{
try
{
conn.close();
System.out.println("yes");
Toast.makeText(MainActivity.this, "yes" , Toast.LENGTH_LONG).show();
}
catch(Exception e)
{
Toast.makeText(MainActivity.this, "nono" , Toast.LENGTH_LONG).show();
System.out.println("nono");
}
}
}

}





@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

}

فایل jar را هم اضافه کردم. لطفا راهنمایی کنید خیلی وقتم گرفته شده

golbafan
شنبه 05 اردیبهشت 1394, 09:48 صبح
سلام


اول از همه این رو پیدا کن و در پروژه ات ایمپورت کن:
JDBC driver library for SQL Server
فایلش: jtds-1.2.5.jar


بعد مثل این کد عمل کن:


import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import net.sourceforge.jtds.jdbc.*;
public void query2()
{
Log.i("Android"," MySQL Connect Example.");
Connection conn = null;
try {
String driver = "net.sourceforge.jtds.jdbc.Driver";
Class.forName(driver).newInstance();

String connString = "jdbc:jtds:sqlserver://server_ip_address:1433/DBNAME;encrypt=fasle;user=xxxxxxxxx;password=xxxxx xxx;instance=SQLEXPRESS;";

String username = "xxxxxx";
String password = "xxxxxxxxxx";
conn = DriverManager.getConnection(connString,username,pa ssword);
Log.w("Connection","open");
Statement stmt = conn.createStatement();
ResultSet reset = stmt.executeQuery("select * from TableName");
while(reset.next()){
Log.w("Data:",reset.getString(3));
}
conn.close();
} catch (Exception e)
{
Log.w("Error connection","" + e.getMessage());
}
}

heyoo64
شنبه 05 اردیبهشت 1394, 13:24 عصر
انجام دادم ولی بازم کانکت نشدم

heyoo64
شنبه 05 اردیبهشت 1394, 16:06 عصر
دوستان از سرچ کردن خسته شدم، راهنمایی کنید لطفا ..

heyoo64
یک شنبه 06 اردیبهشت 1394, 10:28 صبح
بچه ها این کدمه :
package com.shokouhi.heyooconnection;

import android.os.Bundle;
import android.app.Activity;
import android.util.Log;
import android.view.Menu;
import android.widget.Toast;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;


public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
query2();

}

public void query2()
{
Log.i("Android","MSSQLSERVER Connect Example.");
Connection conn = null;
try {
String driver = "net.sourceforge.jtds.jdbc.Driver";
Class.forName(driver).newInstance();
String connString = "jdbc:jtds:sqlserver://172.16.0.146:1433/sample";
String username = "*****";
String password = "****";
conn = DriverManager.getConnection(connString,username,pa ssword);
Log.w("Connection","open");
Statement stmt = conn.createStatement();
ResultSet reset = stmt.executeQuery("select * from Persone");
while(reset.next()){
Log.w("Data:",reset.getString(3));
Toast.makeText(MainActivity.this, "Successfully Connected to the database" , Toast.LENGTH_LONG).show();
}

conn.close();

} catch (Exception e)
{
Log.w("Error connection","" + e.getMessage());
Toast.makeText(MainActivity.this, "no Connected " , Toast.LENGTH_LONG).show();
}
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

}

heyoo64
یک شنبه 06 اردیبهشت 1394, 10:29 صبح
این log.error

130631

heyoo64
دوشنبه 07 اردیبهشت 1394, 10:12 صبح
آیا کسی هست مرا یاری کند؟؟؟؟؟

محمد فدوی
دوشنبه 07 اردیبهشت 1394, 21:03 عصر
آیا کسی هست مرا یاری کند؟؟؟؟؟
سلام. مطمئن نیستم ولی شاید درایور Microsoft SQL Server با ماشین مجازی اندروید هم‌خوانی نداشته باشه. اساسا دلیل استفاده از SQL Server در کنار اندروید یه کم زیر سؤاله.
شاید این لینک (http://stackoverflow.com/questions/24934090/sql-database-connect-using-the-jdbc-driver-with-android) کمکتون کنه.

موفق باشید.

heyoo64
سه شنبه 15 اردیبهشت 1394, 11:32 صبح
مرسی از راهنمایتون
ولی همچنان درگیرم

dasssnj
چهارشنبه 16 اردیبهشت 1394, 18:41 عصر
سوال تون را در بخش اندروید (http://barnamenevis.org/forumdisplay.php?187-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-Android)بپرسید شاید کاربران اون بخش بتونن مشکل تون را حل کنند .