انجمن سایت کلیدستان


رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
ارتباط بین ایکلیپس (یا اندروید استادیو) و sql server

ارتباط بین ایکلیپس (یا اندروید استادیو) و sql server

#1
سلام 

من  می خوام برنامه برای شرکتی بنویسم که همه اطلاعاتش روی  دیتابیس sql هست و فقط یک ip به من داده می خواستم این سوال بپرسم که 
 
این دیتابیس روی هاست اینپورت کردن یا اینکه از طریق خود برنامه sql server به اشتراک گذاشته شده و ما با خود sql  باید ارتباط برقرار کنیم 
یا اینکه اول دیتابیس و تیبل ها را با sql  ساخته و بعدی روی هاست اینپورت کردن و ما باید از این طریق با این دیتابیس ارتباط برقرار کنیم 

لطفا راهنمایی کنید .
پاسخ

ارتباط بین ایکلیپس (یا اندروید استادیو) و sql server

#2
سلام.

(۱۳۹۴/۰۹/۱۸, ۱۰:۰۴ ب.ظ)kavos نوشته: این دیتابیس روی هاست اینپورت کردن یا اینکه از طریق خود برنامه sql server به اشتراک گذاشته شده و ما با خود sql  باید ارتباط برقرار کنیم 
یا اینکه اول دیتابیس و تیبل ها را با sql  ساخته و بعدی روی هاست اینپورت کردن و ما باید از این طریق با این دیتابیس ارتباط برقرار کنیم 

بنده تا به امروز با sql server کار نکردم، ولی مواردی که به ذهنم میرسه رو بیان می کنم.

در هر کجا میشه پایگاه داده و جدول های آن را ساخت و بعد انتقال پایگاه داده ها امکان پذیر است (مثلا از کامپیوتر خانگی به هاست یا از هاست به هاست یا ...). در واقع، اهمیتی ندارد که پایگاه داده چگونه ساخته شده (در خود هاست ساخته شده یا اینکه import شده است)، مهم این است که اگنون ساختار اطلاعات پایگاه داده به چه صورت می باشد.

برای MySQL ، مباحثی در دسته بندی زیر نوشته شده است :

http://www.kelidestan.com/keys/categorie...ategory=18

شما تنها باید توابع و روش هایی که در PHP برای کار با sql server به کار می روند را بیابید (مثل mssql_connect و ...) و با آنها، عملیات اتصال به پایگاه داده و تبادل اطلاعات (خواندن یا ثبت اطلاعات در پایگاه داده) را انجام  بدهید (query های sql تغییری نمی کند و روند ارتباط با فایل php و ... نیز یکسان می باشد). 
بنابراین شما باید یک صفحه PHP را در هاست قرار داده باشید تا بر اساس آن با پایگاه داده تبادل اطلاعات کنید.

Flower
bookbook 
لطفا برای درج کد، از دکمه مخصوص درج کد در ادیتور انجمن استفاده کنید.
در مورد برنامه نویسی، مدیران تنها راهنمایی می کنند و نوشتن برنامه نهایی، به عهده کاربران می باشد (اینجا محلی برای یادگیری است، نه سفارش کدنویسی).
کاربران باید ابتدا خود به خطایابی برنامه بپردازند، نه اینکه به محض دیدن خطا، کدها را در انجمن، copy و paste کرده و از مدیران انتظار بررسی داشته باشند.
پاسخ
 سپاس شده توسط kavos

ارتباط بین ایکلیپس (یا اندروید استادیو) و sql server

#3
(۱۳۹۴/۰۹/۱۸, ۱۰:۰۴ ب.ظ)kavos نوشته: سلام 

من  می خوام برنامه برای شرکتی بنویسم که همه اطلاعاتش روی  دیتابیس sql هست و فقط یک ip به من داده می خواستم این سوال بپرسم که 
 
این دیتابیس روی هاست اینپورت کردن یا اینکه از طریق خود برنامه sql server به اشتراک گذاشته شده و ما با خود sql  باید ارتباط برقرار کنیم 
یا اینکه اول دیتابیس و تیبل ها را با sql  ساخته و بعدی روی هاست اینپورت کردن و ما باید از این طریق با این دیتابیس ارتباط برقرار کنیم 

لطفا راهنمایی کنید .

من تلاش زیادی روی این موضوع کردم به این نتیجه رسیدم 
1- زمانی که شما اطلاعاتتان روی دیتابیس sqlserver هست از هاست ویندوز استفاده کنید یعنی این هاست ویندوزی هست که از این امکان پشتیبانی می کند و معمولا sql2012 هست 
2- چون کار کردن با sql هاست سخت است بهتر است برنامه sqlserver  را بر روی سیستم خود نصب کنید تا بتوانید بصورت آنلاین با دیتابیس خود کارکنید 
3- کد های php که برای برقراری ارتباط با دیتابیس استفاده می کنید تفاوت زیادی با mysql  نیست فقط بجای mysql بنوسید mssql
4- زمانی که از طریق اندروید (اندروید استادیو ) می خواهید ارتباط برقرار کنید با از کتابخانه jtds-1.3.1-dist   استفاده کنید 
نمونه کد اندروید
پاسخ
 سپاس شده توسط admin

ارتباط بین ایکلیپس (یا اندروید استادیو) و sql server

#4
کد پی‌اچ‌پی:
package com.application.myapplication;

import android.app.Activity;
import android.os.Bundle;
import android.os.StrictMode;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.SimpleAdapter;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class 
MainActivity extends Activity {

    
EditText  input_text;
    
Button   run;
    
SimpleAdapter AD;
    
Connection connect;
    
ListView Lista;
    @
Override
    
protected void onCreate(Bundle savedInstanceState) {
        
super.onCreate(savedInstanceState);
        
setContentView(R.layout.activity_main);
        
inicializar();
        
run.setOnClickListener(new View.OnClickListener() {
            @
Override
            
public void onClick(View v) {
                
QuerySQL(input_text.getText().toString());


            }
        });



    }
    private  
void declarar(){
        
input_text= (EditTextfindViewById(R.id.editText);
        
run= (ButtonfindViewById(R.id.button);
        
Lista= (ListViewfindViewById(R.id.listView);



    }

    private  
void inicializar() {
        
declarar();
        
input_text.setText("SELECT  * FROM Table_1");
        
connect=CONN("kavos","1841869120kavos","kavos","67.225.166.182");


    }


    private 
Connection CONN(String _user,String _pass,String _DB,String _server) {
        
StrictMode.ThreadPolicy policy=new StrictMode.ThreadPolicy.Builder().permitAll().build();
        
StrictMode.setThreadPolicy(policy);
        
Connection conn=null;
        
String ConnURL=null;
        try {
            Class.
forName("net.sourceforge.jtds.jdbc.Driver");
            
ConnURL="jdbc:jtds:sqlserver://"_server +";" "databaseName="+_DB+";user="+_user+";password="+_pass+";";
            
connDriverManager.getConnection(ConnURL);
        } catch (
SQLException se) {
            
Log.e("ERRO"se.getMessage());

        } catch (
ClassNotFoundException e) {
            
Log.e("ERRO",e.getMessage());

        }catch (
Exception e){
            
Log.e("ERRO",e.getMessage());

        }
        return 
conn;
    }


    private   
void  QuerySQL(String  COMANDOSQL){
        
ResultSet res;
        try {
            
Statement statement=connect.createStatement();
            
res=statement.executeQuery(COMANDOSQL);
            List<
Map<String,String>> data=null;
            
data=new ArrayList<Map<StringString>>();
            while (
res.next()){
                
Map<String,Stringdatanum=new HashMap<String,String>();
                
datanum.put("A",res.getString("name"));
                
datanum.put("B",res.getString("fimeli"));
                
data.add(datanum);
            }
            
String from[]={"A","B"};
            
int views[]={R.id.name,R.id.family};
            
AD=new SimpleAdapter(this,data,R.layout.model,from,views);
            
Lista.setAdapter(AD);

        }catch (
Exception e){
            
Log.e("ERRO",e.getMessage());

        }

    }


نمونه کد اندروید استادیو
پاسخ
 سپاس شده توسط شماره مجازی امارات ، تلگرام ضد فیلتر 2023


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان