ado.net 与jdbc

Ado.net[sqlserver]连接

//生成连接对象
  SqlConnection conn = new SqlConnection(“server=.;database=northwind;uid=sa;pwd=”);
//由连接生成sqlcommand
SqlCommand cmd=conn.CreateCommand();
//指定命令类型
  cmd.CommandType=CommandType.StoredProcedure;
//写存储过程名或sql语句
  cmd.CommandText="up_select_test";
//将参数添加到 parameters集合 
  cmd.Parameters.Add("@tag",SqlDbType.VarChar,50);
cmd.Parameters.Add("@count",SqlDbType.Int);

//设置参数的值
  cmd.Parameters["@tag"].Value="SELECTALL";
//指定参数的输出方向
  cmd.Parameters["@count"].Direction=ParameterDirection.Output;
//开启连接通道
 conn.Open();
//获取结果集
  SqlDataReader dr= cmd.ExecuteReader();
//判断是否有下一行数据
  while(dr.Read()){
//从结果集中取productid,还可用dr.getValue(0)或dr[0]等方式;
   Response.Write(dr["productid"]);
   Response.Write(dr["productname"]);
   Response.Write(dr["unitprice"]+"<br>");
   }
 conn.Close();

//获取输出的参数值
  Response.Write( cmd.Parameters["@count"].Value);

J2ee JDBC[sqlserver]连接
//加载sqlserver驱动
 Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
 //设置好连接字符串
String url ="jdbc:microsoft:sqlserver://127.0.0.1:1433;databaseName=northwind;user=sa;password=";
//由drivermanager得到连接对象;
Connection conn=DriverManager.getConnection(url);
 //连接对象准备好callablestatement对象,并预处理好参数
CallableStatement cs= conn.prepareCall("{call up_select_test(?,?)}");
 //连接对象设置好参数的值
cs.setString(1,"SELECTALL");
 //连接对象注册输出参数(下标,类型);
cs.registerOutParameter(2,Types.INTEGER);
 //执行查询,得到结果集;
ResultSet rs= cs.executeQuery();
 //遍历结果集;
while(rs.next()){
 //取出结果集的数据
 out.println(rs.getString("productid")+"|"+rs.getString("productname")+"|"+rs.getString("unitprice"));
}
 //有statement语句对象,得到输出的参数
out.println("输出的参数:"+cs.getInt(2));
 //关闭结果集;
rs.close();
 //关闭语句对象;
cs.close();
 //关闭连接对象;
conn.close();

总结:1.ado.net中Command对象类似 jdbc中statement[语句命令]对象;
 Jdbc{
   Statement;//普通语句对象;
   PreparedStatement;//预处理;
   CallableStatement;//调用存储过程;
}
2.ado.net用parameters集合存储参数;
Jdbc用语句对象设置参数
3.ado.net用sqldatereader存储结果;
 用dr.read()判断是否有下一行数据;
 Jdbc用resultset存储
 用rs.next()判断;
4.ado.net中数据的获得
{
 dr[“列名”];
 dr.getValue(“下标”);//从0开始;
 dr.getString(“下标”);如: dr.getString(0);
}
 Jdbc中获取数据
{
 rs.getString(“列名”);
 rs.getInt(“列名”);
 rs.getFloat(“列名”);
 或使用ResultSetMetaDate获取数据信息;
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

gamebox1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值