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. Sed命令学习

    1.Sed简介     流数据编辑器 Stream editer(sed),它是一种行编辑器(对应于全屏编辑器),一次处理一行的内容.默认不编辑原文件内容(-i会直接修改原文件).处理时,它先将当前符 ...

  2. How can I save HICON to an .ico file

    refer:http://stackoverflow.com/questions/2289894/how-can-i-save-hicon-to-an-ico-file answer1: #inclu ...

  3. dede分页

    {dede:list pagesize ='} <div class="intro clearfix"> <ul class="pic"> ...

  4. PHP获取图片颜色值,检测图片主要颜色的代码:

    <?php $i=imagecreatefromjpeg("photo3.jpg");//测试图片,自己定义一个,注意路径 for ($x=0;$x<imagesx($ ...

  5. Lua 学习笔记(二)

    七.再论lua函数 1.lua中的函数被认为是带有词法定界和第一类值    a.词法定界:被嵌套的函数可以访问外部函数的变量    b.第一类值: lua中的函数可以放在变量中    (函数指针?) ...

  6. Intent系列讲解---Intent简介以及相关属性

    一.Intent简介 Intent中文是"意图,意向",它是Android中四大组件通讯的纽带,Intent负责对应用中一次操作的动作.动作涉及数据.附加数据进行描述,Androi ...

  7. shell编程技术之-基础知识

    一.脚本结构 linux下shell的脚本,是将一系列命令序列写在一个文本文件,而这个文本文件时可执行的.相对命令行来说,开发效率提高.因此他的构架有2部分构成#!和命令序列.其中#!指明此脚本是用哪 ...

  8. iptables 顺序

    -A INPUT -s 115.236.6.6/32 -p udp -m udp --dport 111 -j ACCEPT -A INPUT -s 10.175.197.98/32 -p udp - ...

  9. bzoj 1189

    题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1189 这道题目看起来好像要用很高端的网络流. 这道题有一个特别之处,就是每一个空地都有人,不是 ...

  10. 【剑指offer】面试题37:两个链表的第一个公共结点

    题目: 输入两个链表,找出它们的第一个公共结点. 思路: 由链表的定义知是单链表.对于单链表,如果两个链表有公共结点,则两个链表必然是像Y型相交.则先计算出各个链表的长度,让长链表的头指针先走多出来的 ...