×

android学习系列-JDBC连接SQL server与ADO.NET连接Sql Server对比(4)

Kalet Kalet 发表于2013-12-20 11:09:59 浏览174 评论0

抢沙发发表评论

    <!-- 访问网络的权限 -->  
    <uses-permission android:name="android.permission.INTERNET" />  

JDBC连接SQL server与ADO.NET连接Sql Server对比

1.JDBC连接SQL server
1)java方面目前有很多驱动能够驱动连接SQL servernet.
  主流的有两个sourceforge.jtds.jdbc.Driver和JDBC。
2)代码如下:

package com.testSqlJDBC;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

public class testJDBC {
 
 public static void main(String[] srg) { 
  //jtds连接
  // try {
         //      
  //  Class.forName("net.sourceforge.jtds.jdbc.Driver");  //1.注册激活驱动程序
      //  Connection conn = DriverManager.getConnection("jdbc:jtds:sqlserver://ZHAO-PC:1433/Northwind","sa","1");//2.连接数据库
   
       //       Statement stmt = conn.createStatement();//3.打开数据库
       //      ResultSet result = stmt.executeQuery("select * from Orders");//4.执行SQL
       //      while (result.next()) {
       //           System.out.println(result.getString("ShipName"));
       //       }
       //       stmt.close();//5.关闭数据库连接
       //       conn.close();
       //   } catch (Exception e) {
       //       e.printStackTrace();
       //   }

   try {
           
  //jdbc连接
     Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
         
     Connection conn = DriverManager.getConnection("jdbc:sqlserver://ZHAO-PC\\SQL2008R2S1:12966;DatabaseName=CMSDB", "sa", "1");
             Statement stmt = conn.createStatement();
             ResultSet result = stmt.executeQuery("select * from SYS_Code");
             while (result.next()) {
                 System.out.println(result.getString("CodeName"));
             }
             stmt.close();
             conn.close();
         } catch (Exception e) {
             e.printStackTrace();
         }

 }
}
2.ADO.NET连接Sql Server对比
       public DataTable GetData()
        {
            string connString = @"Data Source=ZHAO-PC\SQL2008R2S1;Initial Catalog=test;Persist Security Info=True;User ID=sa;Password=1";
            SqlConnection cn = new SqlConnection(connString);
            cn.Open();//1.打开数据库连接

            //2.执行SQL
            SqlCommand cm = new SqlCommand();
            cm.Connection = cn;
            cm.CommandType = CommandType.Text;
            cm.CommandText = "Select * from SYS_Code";

            SqlDataAdapter da = new SqlDataAdapter();
            da.SelectCommand = cm;
            DataTable dt = new DataTable();
            da.Fill(dt);
            //2.关闭数据库连接
            cn.Close();
            return dt;
        }

3.总结
1)不管是Java的jdbc还是.net的ADO.NET 都是实现了访问数据库的接口。
2)同样访问其他数据库要分别用到相应的驱动。这些驱动都是实现了java或net定义的访问数据库接口。
3)通过定义接口规范,不同的数据库厂商都能按照规范提供自己的数据库访问接口实现(即驱动程序)。从而达到访问数据库代码的一致性。
4)访问数据库的一般步骤:打开数据库,执行sql,关闭数据库。

5)无论是java还是net都可以做成web 服务供android客户端调用。传统的android应用涉及到数据库访问一般都是android前台展示+web service访问数据库提供数据源。

群贤毕至

访客