java 学习原生jdbc
public class App
{
public static void main( String[] args )
{
//JDBC驱动
String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=model";
String userName = "sa";////用户名
String userPwd = "sa123456";////密码
Connection dbConn;
try{
//加载MsSql的驱动类
Class.forName(driverName) ;
}catch(ClassNotFoundException e){
System.out.println("找不到驱动程序类 ,加载驱动失败!");
e.printStackTrace() ;
return;
}
//创建数据库连接
try
{
dbConn = DriverManager.getConnection(dbURL, userName, userPwd);
System.out.println("数据库连接成功!"); //如果连接成功 控制台输出Connection Successful!
//创建Statement
//Statement实例分为以下3 种类型:
//1、执行静态SQL语句。通常通过Statement实例实现。
//2、执行动态SQL语句。通常通过PreparedStatement实例实现。
//3、执行数据库存储过程。通常通过CallableStatement实例实现。
Statement statement=dbConn.createStatement();
ResultSet rs=statement.executeQuery("select * from [user]");
while(rs.next()){
String name = rs.getString("UserName") ;
int id = rs.getInt(1) ; // 列索引,从1开始,此方法比较高效
} PreparedStatement preparedStatement=dbConn.prepareStatement("select * from [user] where UserName = ? ");
preparedStatement.setString( 1 ,"Aven");
//Statement接口提供了三种执行SQL语句的方法:
// executeQuery 查询
// executeUpdate 修改
//execute 执行
rs=preparedStatement.executeQuery();
while(rs.next()){
String name = rs.getString("UserName") ;
int id = rs.getInt(1) ; // 列索引,从1开始,此方法比较高效
}
//修改表记录
preparedStatement = dbConn.prepareStatement("UPDATE [user] SET UserName = ? WHERE UserId= ? ");
//可以把?替换成变量
//当然也可以直接用 "UPDATE [user] SET UserName = '"+username+"' WHERE UserId= "+Integer.toString(userId)
preparedStatement.setString(1, "Chen");
preparedStatement.setInt(2, 1); preparedStatement.executeUpdate(); if(rs != null){ // 关闭记录集
try{
rs.close() ;
}catch(SQLException e){
e.printStackTrace() ;
}
}
if(preparedStatement != null){ // 关闭声明
try{
preparedStatement.close() ;
}catch(SQLException e){
e.printStackTrace() ;
}
}
if(dbConn != null){ // 关闭连接对象
try{
dbConn.close() ;
}catch(SQLException e){
e.printStackTrace() ;
}
}
}
catch (Exception ex)
{
ex.printStackTrace();
}
}
}
java 学习原生jdbc的更多相关文章
- Java学习之JDBC 2019/3/10
Java学习之JDBC 大部分的程序都是用来通过处理数据来达到人们预期的效果,数据是粮食,没有数据操作的程序就像helloworld程序一样没有用处.因此数据库操作是重中之重,是程序发挥功能的基石,j ...
- java学习之JDBC
之前学习了数据库原理,上学期也学了oracle数据库,我的学习视频上是讲的mysql数据库,其实都差不多,复习了下sql知识,数据库的学习就没有写下来了,就从Java怎么操作数据库开始吧. 因为这年过 ...
- Java学习笔记——JDBC读取properties属性文件
Java 中的 properties 文件是一种配置文件,主要用于表达配置信息,文件类型为*.properties,格式为文本文件. 文件的内容是格式是"键=值"(key-valu ...
- Java学习笔记——JDBC之与数据库MySQL的连接以及增删改查等操作
必须的准备工作 一.MySQL的安装.可以参考博文: http://blog.csdn.net/jueblog/article/details/9499245 二.下载 jdbc 驱动.可以从在官网上 ...
- Java学习笔记--JDBC数据库的使用
参考 hu_shengyang的专栏 : http://blog.csdn.net/hu_shengyang/article/details/6290029 一. JDBC API中提供的常用数据库 ...
- java学习之jdbc的封装
jdbc是连接数据库必不可少的工具,但每次连接都要重新写一遍太麻烦了,也不利于代码的可读性,这里做一个工具类进行封装. package com.gh; import java.sql.Connecti ...
- JAVA学习笔记 -- JDBC及其应用
一个.准备工作 1.开放SQL Server服务与支持TCP/IP 进一步确认TCPport watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMjk ...
- Java学习(JDBC java连接数据库)
一.概述 JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写 ...
- Java学习:JDBC快速入门
本节类容 JDBC基本概念 快速入门 JDBC基本概念 概念: Java DataBase Connectivity Java 数据库连接,Java语言操作数据库 JDBC本质: 其实是官方(sun公 ...
随机推荐
- [hdu3949]XOR(线性基求xor第k小)
题目大意:求xor所有值的第k小,线性基模板题. #include<cstdio> #include<cstring> #include<algorithm> #i ...
- 线段树教做人系列(2)HDU 4867 XOR
题意:给你一个数组a,长度为.有两种操作.一种是改变数组的某个元素的值,一种是满足某种条件的数组b有多少种.条件是:b[i] <= a[i],并且b[1]^b[2]...^b[n] = k的数组 ...
- 在Ubuntu里安装Mysql5.7.23
准备在Linux里安装Mysql,安装过程中遇到很多问题,这里记录下我成功安装的过程. 操作系统:Ubuntu 18.04 数据库:Mysql 5.7.23 安装步骤: 1.下载一个apt,下载mys ...
- VMware内部错误解决办法
虚拟机内部错误,不要担心不是致命错误,往往是由于你的配置被禁用了或者VMware运行权限不够导致 检查你的VMware虚拟网卡是否被禁用 检查你的VMware的运行权限,直接管理员运行就够够的了
- poj3420 Quad Tiling
传送门 题目大意 问讲一个大小为4*n的棋盘用无数1*2的骨牌不重叠覆盖有多少种方案. 分析 我们考虑可以将长为n的棋盘分为两块,一个大小为n-i,另一个大小为i,而为了避免对于不同的i构造出相同的情 ...
- Linux网络服务管理命令
netstat命令 示例:查看指定的服务是否开启netstat | grep ssh | grep -v grep 网络下载器————wget wget是一个Linux环境下用于从WWW上提取文件的工 ...
- Postman工具---请求与响应
参考:http://blog.csdn.net/water_0815/article/details/53311561
- DiscreteFrechetDist
计算离散的frechet 距离,通过计算两条曲线之间的点的距离,将两条曲线上的点按照距离以及曲线的趋势进行配对,最后根据这些配对的距离选出最后的离散frechet距离(compute discrete ...
- 使用swiper.animate时,给一个对象添加两个动画且动画循环的方法
swiper官网上给对象加一个动画的方法是 <div class="swiper-slide"> <p class="ani" swiper- ...
- mybatis新增对象自动生成uuid方案
mybatis新增对象时, 使用拦截器自动生成uuid方案有了它不再去xml中手动添加selectKey了, 生成id方案实现类自行实现, 实现IdGenerator接口便可, 主要代码由公司同事编写 ...