import java.sql.Connection;
 import java.sql.DriverManager;
 import java.sql.PreparedStatement;
 import java.sql.ResultSet;
 import java.sql.SQLException;
 /**
  * TestDemo.java
  * 使用java对sql server进行增删改查
  * ---------------------------
  * 数据库名:test
  * 表名:user
  * 拥有字段:
  * id:int(identity(1,1))
  * userName:nvarchar
  * password:nvarchar
  * ---------------------------
  * 部分方法会要求try-catch
  * 为了简洁
  * 对异常进行了 throws
  */
 public class TestDemo {
     /*
      * 使用PreparedStatement对象操作数据库
      * 好处比Statement多太多
      * 安全性,性能...
      *
      * PreparedStatement的参数索引从1开始.
      *
      * 一些常用的方法
      * ResultSet executeQuery();//可以执行sql查询,返回ResultSet对象
      * int executeUpdate();//可以执行“增删改”,返回受影响行数
      * boolean execute();//可以执行任意sql语句,如果结果为Result对象,返回true,反之:false
      */
     private static PreparedStatement ps;

     public static void main(String[] args) throws ClassNotFoundException, SQLException {
         //访问数据库的url
         String url = "jdbc:sqlserver://localhost:1433;databasename=test";
         //加载驱动
         Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
         //建立连接
         Connection conn = DriverManager.getConnection(url,"username","password");

         /*insert*/
         ps = conn.prepareStatement("insert into [user] values(?,?)");
         ps.setString(1, "小红");//设置userName为:小红
         ps.setString(2, "小红的密码");//设置password为:小红的密码
         if(ps.executeUpdate()>0){//如果返回的影响行数大于0,则证明增加成功
             System.out.println("增加了一条记录");
         }

         /*update*/
         ps = conn.prepareStatement("update [user] set password=? where userName=?");
         ps.setString(1, "pwd");//设置小红的密码为:pwd
         ps.setString(2, "小红");//设置update条件,userName=小红
         System.out.println("更新了:"+ps.executeUpdate()+" 条记录");

         /*query*/
         ps = conn.prepareStatement("select * from [user]");//查询所有user
         ResultSet rs = ps.executeQuery();
         while(rs.next()){//如果没有下一条记录,返回false,跳出循环
             //System.out.println("姓名:"+rs.getString("username")+",密码:"+rs.getString("password"));
             String username = rs.getString("username");
             String pwd = rs.getString("password");
             System.out.println("姓名:"+username+",密码:"+pwd);
         }

         /*delete*/
         ps = conn.prepareStatement("delete [user]");//这将删除user中的所有记录
         System.out.println("删除了:"+ps.executeUpdate()+" 条记录");

         /*close 释放资源*/
         rs.close();
         ps.close();
         conn.close();
     }
 }

使用java对sql server进行增删改查的更多相关文章

  1. java对sql server的增删改查

    package Database; import java.sql.*; public class DBUtil { //这里可以设置数据库名称 private final static String ...

  2. SQL Server数据库————增删改查

    --增删改查--增 insert into 表名(列名) value(值列表) --删 delect from 表名 where 条件 --改 update 表名 set 列名=值1,列名2=值2 w ...

  3. VS 使用Sql Server 数据库增删改查

    /// <summary> /// 执行查询语句,返回DataSet /// </summary> /// <param name="SQLString&quo ...

  4. java对xml文件做增删改查------摘录

    java对xml文件做增删改查 package com.wss; import java.io.File;import java.util.ArrayList;import java.util.Lis ...

  5. Java API实现Hadoop文件系统增删改查

    Java API实现Hadoop文件系统增删改查 Hadoop文件系统可以通过shell命令hadoop fs -xx进行操作,同时也提供了Java编程接口 maven配置 <project x ...

  6. 四种简单的sql语句(增删改查语句)

    四种简单的sql语句(增删改查语句) 一.插入语句 insert into [table] ([column],[column],[column]) values(?,?,?) 二.删除语句 dele ...

  7. dml语句就是你常写的sql语句,增删改查

    dml语句就是你常写的sql语句,增删改查

  8. Java项目——模拟电话薄联系人增删改查

    该项目模拟了电话本记录联系人的业务功能,用来练习对数据库的增删改查等操作. 菜单类:Menu -- 用来封装主菜单和个选项的子菜单 Person类: Person--联系人的实体类 TelNoteRe ...

  9. Java Web(十) JDBC的增删改查,C3P0等连接池,dbutils框架的使用

    前面做了一个非常垃圾的小demo,真的无法直面它,菜的抠脚啊,真的菜,好好努力把.菜鸡. --WH 一.JDBC是什么? Java Data Base Connectivity,java数据库连接,在 ...

随机推荐

  1. 让PHP跑在Mac OS X中

    MacBook入手了,配置工作环境,首先得让Mac OS支持PHP.不管你是采用集成的开发环境,比如XAMPP for Mac OS X,还是采用Mac OS中自带的Apache和PHP,甚至自己重新 ...

  2. Linux中的段管理,bss段,data段,

    Linux 的段管理, BSS段(bss segment)通常是指用来存放程序中未初始化的全局变量的一块内存区域.BSS是英文Block Started by Symbol的简称.BSS段属于静态内存 ...

  3. Struts2学习笔记--Struts2的体系结构

    1. Struts2体系结构 Struts是以前端控制器框架为主体的框架,用户的请求会通过控制器选择不同的Action类来执行具体的操作,在Action类中所有的Servlet对象(request.r ...

  4. laravel实现发送qq邮件

    首先修改config/mail.php 'from' => [ 'address' => 'hello@example.com', 'name' => 'Example', ], 修 ...

  5. Oracle set autotrace 时提示:Cannot find the Session Identifier. Check PLUSTRACE role is enabled

    SQL> set autotrace Usage: SET AUTOT[RACE] {OFF | ON | TRACE[ONLY]} [EXP[LAIN]] [STAT[ISTICS]] SQL ...

  6. Ubuntu下Vim 如何进入全屏编辑模式

    如题:F11进入全屏编辑模式,再按F11则退出全屏编辑模式.

  7. VC的话有必要认真听,但却不用急着照办

    本文来自著名风险投资人 Fred Wilson 的博客 AVC,他在 2016 年 8 月 23 日的这篇文章<Understanding VCs>里用简单的语言揭秘了 VC(风险投资人) ...

  8. Loading Cargo

    Loading Cargo "Look Stephen, here's a list of the items that need to be loaded onto the ship. W ...

  9. 10g中注意谓词过滤的位置

    在10g中当主查询的谓词信息,被错误的放入子查询中,会导致子查询无法展开 explain plan for UPDATE DWF.F_PTY_INDIV O SET END_DT = TO_DATE( ...

  10. android Service简介及启动关闭方式

    (1)Service是Android系统中的四大组件之一,和Activity是同一层次的组件:它是一种生命周期较长,没有可视化界面,运行于后台的一种服务:例如,我们听音乐可以使用Service,下载东 ...