1、crud(增删改查)介绍:create/retrieve/update/delete


2、JDBC介绍
1)JDBC(java database connectivity,java数据库连接)
2)是一种用于运行SQL语句的java  API,可为多种关系数据库提供统一訪问。由一组用Java语言编写的类和接口组成。
3)JDBC为工具/数据库开发者提供了一个标准的API,据此可构建更高级的工具和接口,是数据库开发者可以用纯Java API编写数据库应用程序。
4)JDBC也是闪避表明。


3、JDBC驱动分类
1)JDBC-ODBC桥连接
2)本地协议纯Java驱动程序
3)网络协议纯Java驱动程序
4)本地API

4、JDBC的不足
1)JDBC在java语言层面实现了统一,但不同数据库仍有很多差异。
2)Hibernate(跨数据库操作)是针对JDBC的再封装,实现了对数据库操作更宽泛的统一和更好的可移植性。


5、JDBC-ODBC桥连接操作SQL Server
步骤:
1)開始——控制面板——管理工具——数据源(ODBC)——ODBC数据源管理器——用户DSN——加入——创建新数据源——SQL Server——名称——server“local”或“.”(均表示本地)——下一步——“使用Windows NT验证”——下一步——“更改默认的数据库为XXX”——完毕——測试数据源

2)在程序中连接数据源(import  java.sql.*;)
  • 载入驱动(把须要的驱动程序增加内存)
    • Class.forName("sun.jdbc.odbc.JdbcOdbcDriver")
  • 得到连接(指定连接到哪个数据源,username,password)
    • Connection  ct=DriverManager.getConnection("jdbc:odbc:数据库名","sa","password")
    • 注:若为Windows验证,则不须要username和password。

  • 创建Statement或PreparedStatement
    • Statement主要用来发送sql语句到数据库
    • Statement sm=ct.creatStatement();
  • 运行(crud,创建database,备份。恢复)
    • int  i=sm.executeUpdate("insert into dept values('50','保安部','西永')");i表示成功加入的记录条数
    • executeUpdate可cud操作
  • 关闭资源
    • if(sm!=null)
                         sm.close();
                    if(ct!=null)
                          ct.close();

6、补充:
  • 删除一条记录
    • int i==sm.executeUpdate("delete  from  dept  where  dept=50");
  • 查询
    • ResultSet  rs=sm.executeQuery("select  *  from dept");
                    while(rs.next(0){
                         int deptno=rs.getInt(1);
                         String dname=rs.getString(2);
                         String loc=rs.getString(3);
                    }
    • rs指向结果集的第一行的前一行,循环取出。


数据库SQL Server2012笔记(七)——java 程序操作sql server的更多相关文章

  1. Java程序操作数据库SQLserver详解

    数据库基本操作:增删改查(CRUD) crud介绍(增.删.改.查操作) CRUD是指在做计算处理时的增加(Create).查询(Retrieve)(重新得到数据).更新(Update)和删除(Del ...

  2. SQL函数TIMEDIFF在Java程序中使用报错的问题分析

    需求背景 (读者可略过)司机每天从早到晚都会去到不同的自动售货机上补货,而且补货次数和路线等也是因人而异,补货依据是由系统优化并指派.但是目前系统还无法实施有效指挥和优良的补货策略,司机的补货活动因此 ...

  3. SQL学习笔记七之MySQL视图、触发器、事务、存储过程、函数

    阅读目录 一 视图 二 触发器 三 事务 四 存储过程 五 函数 六 流程控制 一 视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名 ...

  4. java程序操作Geometry对象

    Geometry 空间地理对象,Oracle中存储Geometry对象的字段类型是 MDSYS.SDO_GEOMETRY,在数据库中构建Geometry对象的方法: v_pointarray MDSY ...

  5. 大数据-09-Intellij idea 开发java程序操作HDFS

    主要摘自 http://dblab.xmu.edu.cn/blog/290-2/ 简介 本指南介绍Hadoop分布式文件系统HDFS,并详细指引读者对HDFS文件系统的操作实践.Hadoop分布式文件 ...

  6. 读书笔记一 Java程序员的基本修养(数组及其内存管理)

    1.1 数组初始化 1.1.1 java数组是静态的 java数组被初始化之后,该数组所占的内存空间.数组长度都是不可变的. java程序中的数组必须经过初始化才可使用. 数组的初始化有两种方式: 1 ...

  7. Java学习笔记七(目录操作)

    1.介绍 上一篇博客介绍的是java中经常使用的操作文件的方式,本篇博客着重解说一下,在Java中是怎样来操作目录的.主要是利用的是Java.IO包以下的File类,本篇博客着重解说一下该类的构造函数 ...

  8. 数据库SQL Server2012笔记(三)——表的复杂查询

    1.数据分组--max/min/avg/sum/count select  avg(字段名),sum(字段名)  from  表名 select  count(*)  from  表名 select ...

  9. 数据库SQL Server2012笔记(四)——多表查询、子查询、分页查询、用查询结果创建新表和外连接

    1.多表查询 1)笛卡尔集: select  *  from  表名1,表名2 select  *  from  表名1.表名2  where   表名1.字段名=表名2.字段名 注: 若有两张表有同 ...

随机推荐

  1. 21. 【intellij idea】Project Structure 讲解

    转自:.https://www.cnblogs.com/zadomn0920/p/6196962.html 项目的左侧面板 项目设置->Project Project Settings -> ...

  2. 对Jscript操作注册表接口的一点不解

    作者:朱金灿 来源:http://blog.csdn.net/clever101 要操作注册表需要通过ActiveX控件调用WScript.shell对象,通过该对象的一些方法来操作.Wshshell ...

  3. I want to do——输入流readline阻塞问题

    据悉,外界对程序员的印象不是木讷就是死板,不是最笨就是不爱说话,不是宅就是闷骚.昨天我们老左批评我说,自从你写了程序了,你以前的优点都退化了.放在去年,我还觉得我没什么啊,程序员就是这样啊,那是因为我 ...

  4. MyEclipse的代码自动提示功能

     一般默认情况下,Eclipse ,MyEclipse的代码提示功能是比Microsoft Visual Studio的差很多的,主要是Eclipse ,MyEclipse本身有很多选项是默认关闭的, ...

  5. ES6学习笔记(二)变量的解构与赋值

    1.数组的解构赋值 1.1基本用法 ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring). 以前,为变量赋值,只能直接指定值. let a = 1 ...

  6. which---查找并显示给定命令的绝对路径

    which命令用于查找并显示给定命令的绝对路径,环境变量PATH中保存了查找命令时需要遍历的目录.which指令会在环境变量$PATH设置的目录里查找符合条件的文件.也就是说,使用which命令,就可 ...

  7. caioj 1063 动态规划入门(一维一边推1:美元和马克)

    这道题一开始我是这么想的 最后的答案肯定是某次的马克换回来的,但这个该怎么确定?? 实际上应该把范围缩小,只看最后一次和倒数第二次之间有什么联系. 可以发现,只有两种可能,最后一天换或者不换.换的话就 ...

  8. NOIP 模拟赛

    NOIP 模拟赛 思路:求 n , m 的 gcd,然后用 n , m 分别除以 gcd:若 n 或 m 为偶数,则输出 1/2. 特别的,当 n = m = 1 时,应输出 1/1 #include ...

  9. HDU 4975 A simple Gaussian elimination problem.

    A simple Gaussian elimination problem. Time Limit: 1000ms Memory Limit: 65536KB This problem will be ...

  10. poj2486--Apple Tree(树状dp)

    Apple Tree Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 7789   Accepted: 2606 Descri ...