精华内容
下载资源
问答
  • 【python】使用pymsql在数据库中更新数据 import pymql def get_conn(self): #创建connection连接 conn = pymysql.connect(host='loclhost',port=3306,user='root',passwd='root',db='db1') #db1为数据库名称 ...

    【python】使用pymsql在数据库中更新数据

    import pymql
    
    def get_conn(self):
    	 #创建connection连接
          conn = pymysql.connect(host='loclhost',port=3306,user='root',passwd='root',db='db1') #db1为数据库名称
          return conn
    def update(sql):
          conn = self.get_conn()
    	  #创建curson对象
          cur = conn.cursor()
    	  sql="update 表名 set 字段 = '0'  where id in ('1','2','3')"
    	  #执行sql
          result = cur.execute(sql)
          print(result)
    	  # 提交之前的操作,如果之前已经执行多次的execute,那么就都进行提交
          conn.commit()
    	  #关闭curson对象
          cur.close()
    	  #关闭connection对象
          conn.close()
    
    if __name__ == '__main__':
         mian()
    
    展开全文
  • --从一个数据库中更新数据到另一个数据库--所需知识-  步骤一: --使用sp_addlinkedserver来增加链接 EXEC sp_addlinkedserver @server='server116',--被访问的服务器别名(习惯上直接使用目标服务器IP,或取个...
    --从一个数据库中更新数据到另一个数据库--所需知识-
     步骤一:
    --使用sp_addlinkedserver来增加链接
    EXEC sp_addlinkedserver
    @server='server116',--被访问的服务器别名(习惯上直接使用目标服务器IP,或取个别名如:server116)
    @srvproduct='',
    @provider='SQLOLEDB',
    @datasrc='10.1.0.116' --要访问的服务器
    --使用sp_addlinkedsrvlogin 来增加用户登录链接
    EXEC sp_addlinkedsrvlogin
    'server116', --被访问的服务器别名(如果上面sp_addlinkedserver中使用别名server116,则这里也是server116)
    'false',
    NULL,
    'oa', --帐号
    'oa2011' --密码


     步骤二:
     --从一个数据库中更新数据到另一个数据库-语句
    --插入(有效语句)
    insert into [ldmis2000].[dbo].[DEPTCODE] select * from [server116].[ldmis2000].[dbo].[DEPTCODE] b where b.dept_id=1 
    --更新(有效语句)
     UPDATE a SET a.CONTENT=b.CONTENT FROM [ldmis2000].[dbo].[DEPTCODE] a,[server116].[ldmis2000].[dbo].[DEPTCODE] b WHERE a.dept_id='1' and b.dept_id='1' 
    --查询语句
     select * from [ldmis2000].[dbo].[DEPTCODE] where content='总装一车间'
     select * from [server116].[ldmis2000].[dbo].[DEPTCODE] WHERE dept_id=2
     
     -------------其他知识----------------
     --查看当前链接情况:
    select * from sys.servers;
    --使用 sp_helpserver 来显示可用的服务器
    Exec sp_helpserver
    --删除已经存在的某个链接
    Exec sp_droplinkedsrvlogin 'server116',Null --若要删除服务器,要先删除已有链接登录
    Exec sp_dropserver 'server116' --删除服务器
     
    展开全文
  • 前面详细写过如何连接数据库的具体操作,下面介绍向数据库中添加数据。 注意事项:如果参考下面代码,需要 改包名,数据库名,数据库账号,密码,和数据表(数据表里面的信息) 1 package com.ningmeng; 2 ...
    前面详细写过如何连接数据库的具体操作,下面介绍向数据库中添加数据。

    注意事项:如果参考下面代码,需要

    改包名,数据库名,数据库账号,密码,和数据表(数据表里面的信息)

     1 package com.ningmeng;
     2 
     3 import java.sql.*;
     4 
     5 /**
     6  * 1:向数据库中添加数据
     7  * @author biexiansheng
     8  *
     9  */
    10 public class Test01 {
    11 
    12     public static void main(String[] args) {
    13         try {
    14             Class.forName("com.mysql.jdbc.Driver");//加载数据库驱动
    15             System.out.println("加载数据库驱动成功");
    16             String url="jdbc:mysql://localhost:3306/test";//声明数据库test的url
    17             String user="root";//数据库的用户名
    18             String password="123456";//数据库的密码
    19             //建立数据库连接,获得连接对象conn(抛出异常即可)
    20             Connection conn=DriverManager.getConnection(url, user, password);
    21             System.out.println("连接数据库成功");
    22             //生成一条mysql语句
    23             String sql="insert into users(username,password,age,sex) values('小别','123456',22,0)";        
    24             Statement stmt=conn.createStatement();//创建一个Statement对象
    25             stmt.executeUpdate(sql);//执行sql语句
    26             System.out.println("插入到数据库成功");
    27             conn.close();
    28             System.out.println("关闭数据库成功");
    29         } catch (ClassNotFoundException e) {
    30             // TODO Auto-generated catch block
    31             e.printStackTrace();
    32         }//
    33         catch (SQLException e) {
    34             // TODO Auto-generated catch block
    35             e.printStackTrace();
    36         }
    37         
    38     }
    39     
    40 }

     

    详细运行结果

    这样就可以完美插入数据,增删改查第一步完美解决。

    简单介绍一下所使用的知识点:

    在java程序中一旦建立了数据库的连接,就可以使用Connection接口的createStatement()方法来获得statement对象

    然后通过excuteUpdate()方法来执行sql语句,就可以向数据库中添加数据了。

    1:createStatement()方法是Connection接口的方法,用来创建Statement对象

    2:Connection接口代表和特定的数据库连接,要对数据库中数据表的数据进行操作,首先要获取数据库连接。

    3:Statement接口用于创建向数据库中传递SQL语句的对象,该接口提供了一些方法可以实现对数据库的常用操作。

    4:Statement接口中的excuteUpdate()方法执行给定的SQL语句,该语句可以是INSERT,UPDATE,DELETE语句。




    第二种方法

    使用PreparedStatement接口向mysql数据库中插入数据

     1 package com.ningmeng;
     2 
     3 import java.sql.*;
     4 
     5 /**
     6  * 1:使用PreparedStatement接口来执行插入语句
     7  * 
     8  * @author biexiansheng
     9  *
    10  */
    11 public class Test02 {
    12 
    13     public static void main(String[] args) {
    14         // TODO Auto-generated method stub
    15         try {
    16             Class.forName("com.mysql.jdbc.Driver");//加载数据库驱动
    17             System.out.println("加载数据库驱动成功");
    18             String url="jdbc:mysql://localhost:3306/test";//声明数据库test的url
    19             String user="root";//数据库用户名
    20             String password="123456";//数据库密码
    21             //建立数据库连接,获得连接对象conn
    22             Connection conn=DriverManager.getConnection(url, user, password);
    23             System.out.println("连接数据库驱动成功");
    24             //生成一条SQL语句
    25             String sql="insert into users(username,password,age,sex) values(?,?,?,?)";
    26             PreparedStatement ps=conn.prepareStatement(sql);//创建一个Statement对象
    27             ps.setNString(1,"lisi");//为sql语句中第一个问号赋值
    28             ps.setString(2,"123456");//为sql语句中第二个问号赋值
    29             ps.setInt(3,24);//为sql语句第三个问号赋值
    30             ps.setInt(4,2);//为sql语句的第四个问号赋值
    31             ps.executeUpdate();//执行sql语句
    32             conn.close();//关闭数据库连接对象
    33             System.out.println("关闭数据库连接对象");
    34         } catch (ClassNotFoundException e) {
    35             // TODO Auto-generated catch block
    36             e.printStackTrace();
    37         } catch (SQLException e) {
    38             // TODO Auto-generated catch block
    39             e.printStackTrace();
    40         }
    41         
    42         
    43     }
    44 
    45 }

     

    由于刚才不小心多执行了一遍第一个程序,所以多了一行id==7的,特此注释一下

    1:PreparedStatement接口继承Statement,用于执行动态的SQL语句,通过PreparedStatement实例执行SQL语句,将被预编译并且保存到PreparedStatement实例中,从而可以反复的执行该SQL语句。

    2:PreparementStatement接口中的方法,如executeUpdate在此PrepareStatement对象中执行sql语句,该sql语句必须是一个INSERT.UPDATE,DELETE语句,或者是没有返回值的DDL语句。

    3:setString(int pIndex,String str)将参数pIndex位置上设置为给定的String类型的参数,俗语就是在第几个位置写上符合的数据类型

    setInt(int pIndex,int x)

    其他的都类似,不作多叙述






     

    更深层次的理解JDBC对java程序和数据库之间的操作







     

    JDBC技术的常用类和接口

    必须搞明白这些关系,不能只会写代码,理解其含义。
    (1):必须清楚,JDBC是一种可用于执行SQL语句的JAVA API(Application Programming Interface,应用程序设计接口),是连接数据库和java应用程序的一个纽带。


    (2):DriverManager类用来管理数据库中的所有驱动程序,是JDBC的管理层,作用与用户和驱动程序之间,跟踪可用的驱动程序,并在数据库的驱动程序之间建立连接。
    DriverManager类最常用的方法是
    getConnection(String url,String user,String password);


    (3):Connection接口代表与特定的数据库的连接,要对数据表中的数据进行操作,首先要获取数据库的连接。Connection实例就像在应用程序与数据库之间开通了一条通道。
    可通过DriverManager类的getConnection()方法获取Connection实例。
    比如:
    Connection conn=DriverManager.getConnection(url, user, password);
    Statement stmt=conn.createStatement();//创建一个Statement对象

    Connection接口常用的方法是:
    createStatement()创建Statement对象
    close()立即释放此Connection对象的数据库和JDBC资源,而不是等待它们被自动释放。


    (4):Statement接口用于创建向数据库中传递SQL语句的对象,该接口提供了一些方法可以实现对数据库的常用操作。(Statement接口用于执行静态SQL语句,并返回它所生成结果的对象)
    Statement接口常用的方法
    execute(String sql);执行静态的SELECT语句,该语句可能返回多个结果集
    executeQuery(String sql);执行给定的SQL语句,该语句返回单个ResultSet对象。
    executeUpdate()执行给定的SQL语句,该语句可以为INSERT,UPDATE,DELETE语句。
    close()释放Statement实例占用的数据库和JDBC资源。


    (5):PreparedStatement接口继承了Statement接口,用于执行动态的SQL语句,通过PreparedStatement实例执行的sql语句,将被预编译并保存到PreparedStatement实例中,从而可以反复的执行该SQL语句。
    PreparedStatement接口的常用方法。
    execute();在此PreparedStatement对象中执行SQL语句,该语句可以是任何类型的SQL语句。
    executeQuery()在此PreparedStatement对象中执行SQL查询语句,返回结果为查询结果集ResultSet对象。
    executeUpdate()在此PreparedStatement对象中执行SQL语句,该语句必须是一个INSERT,UPDATE,DELETE语句。或者是没有返回值的DDL语句。
    close()释放Statement实例占用的数据库和JDBC资源。

    (6):ResultSet接口类似与一个临时表,用来暂时存放数据库查询操作所获得的结果集,





    下面写几个程序更深层次的理解一下JDBC作为连接数据库的JAVA程序纽带
    1:首先封装了通用的一些东西,然后通过引入调用(需要注意的是包名,类名,mysql数据库账号,密码,数据库名,数据表名,字段等等。)

     1 package com.util;
     2 
     3 import java.sql.Connection;
     4 import java.sql.DriverManager;
     5 import java.sql.SQLException;
     6 
     7 public class Dbutil {
     8     
     9     private static String url="jdbc:mysql://localhost:3306/db_person";//生命数据库的url(地址)
    10     private static String user="root";//数据库账号
    11     private static String password="123456";//数据库密码
    12     private static String driver="com.mysql.jdbc.Driver";//数据库的驱动
    13     
    14     /**
    15      * 
    16      * @return
    17      * @throws Exception
    18      */
    19     public Connection getCon() throws Exception{
    20         Class.forName(driver);//加载数据库驱动
    21         Connection con=DriverManager.getConnection(url, user, password);
    22         //建立数据库的连接,获得连接对象con
    23         return con;
    24     }
    25     
    26     /**
    27      * 
    28      * @param con
    29      * @throws Exception
    30      */
    31     public void close(Connection con) throws Exception{
    32         if(con!=null){
    33             con.close();
    34         }    
    35     }
    36     
    37     
    38 }
    封装的通用的一些东西
     1 package com.ningmeng;
     2 
     3 import java.sql.Connection;
     4 import java.sql.Statement;
     5 
     6 import com.util.Dbutil;
     7 
     8 public class Test {
     9   
    10      public static void main(String args[]) throws Exception {  
    11          Dbutil db=new Dbutil();
    12          String sql="insert into db_book values(null,'javaweb',888,'小别',1)";//生成一条sql语句
    13          Connection con=db.getCon();//获取数据库的连接
    14          Statement stmt=con.createStatement();//创建一个Statement连接
    15          int result=stmt.executeUpdate(sql);//执行sql语句
    16          System.out.println("执行了"+result+"数据");
    17          stmt.close();//关闭顺序是先关闭小的,后关闭大的
    18          con.close();
    19          
    20      }     
    21 } 
    核心代码

    2:数据库的插入一般都是从前台获取的,上面这个例子不是很好,下面举例另一种方式。

    (插入数据时使用拼接)同样引用上面封装的通用的一些东西!!!

     1 package com.ningmeng;
     2 
     3 import java.sql.Connection;
     4 import java.sql.Statement;
     5 
     6 import com.util.Dbutil;
     7 
     8 public class Test2 {
     9 
    10     private static Dbutil db=new Dbutil();
    11     private static int add(String name,float price,String author,int bookTypeId)
    12         throws Exception{
    13         Connection con=db.getCon();
    14         String sql="insert into db_book values(null,'"+name+"',"+price+",'"+author+"',"+bookTypeId+")";
    15         Statement stmt=con.createStatement();//创建一个Statement连接
    16         int result=stmt.executeUpdate(sql);//执行sql语句
    17         db.close(stmt,con);
    18         return result;
    19     }
    20     public static void main(String[] args) throws Exception {
    21         // TODO Auto-generated method stub
    22         int result=add("java",888,"小卡",1);
    23         if(result==1){
    24             System.out.println("添加成功");
    25         }else{
    26             System.out.println("添加失败");
    27         }
    28         
    29     }
    30 
    31 }
    核心代码

    (可以发现已经添加成功了)

    3:下面使用面向对象的思想传入数据(实现的时候和上面的一同完成操作,)

     

     1 package com.ningmeng;
     2 
     3 public class Book {
     4     
     5     private String name;
     6     private float price;
     7     private String author;
     8     private int bookTypeId;
     9     public String getName() {
    10         return name;
    11     }
    12     public void setName(String name) {
    13         this.name = name;
    14     }
    15     public float getPrice() {
    16         return price;
    17     }
    18     public void setPrice(float price) {
    19         this.price = price;
    20     }
    21     public String getAuthor() {
    22         return author;
    23     }
    24     public void setAuthor(String author) {
    25         this.author = author;
    26     }
    27     public int getBookTypeId() {
    28         return bookTypeId;
    29     }
    30     public void setBookTypeId(int bookTypeId) {
    31         this.bookTypeId = bookTypeId;
    32     }
    33     public Book(String name, float price, String author, int bookTypeId) {
    34         super();
    35         this.name = name;
    36         this.price = price;
    37         this.author = author;
    38         this.bookTypeId = bookTypeId;
    39     }
    40     
    41     
    42     
    43     
    44 }
    封装,面向对象的思想

     

     1 package com.ningmeng;
     2 
     3 import java.sql.Connection;
     4 import java.sql.Statement;
     5 
     6 import com.util.Dbutil;
     7 
     8 public class Test2 {
     9 
    10     private static Dbutil db=new Dbutil();
    11     
    12     private static int add2(Book book) throws Exception{
    13         Connection con=db.getCon();
    14         String sql="insert into db_book values(null,'"+book.getName()+"',"+book.getPrice()+",'"+book.getAuthor()+"',"+book.getBookTypeId()+")";
    15         Statement stmt=con.createStatement();//创建一个Statement连接
    16         int result=stmt.executeUpdate(sql);//执行sql语句
    17         db.close(stmt,con);
    18         return result;
    19     }
    20     
    21     private static int add(String name,float price,String author,int bookTypeId)
    22         throws Exception{
    23         Connection con=db.getCon();
    24         String sql="insert into db_book values(null,'"+name+"',"+price+",'"+author+"',"+bookTypeId+")";
    25         Statement stmt=con.createStatement();//创建一个Statement连接
    26         int result=stmt.executeUpdate(sql);//执行sql语句
    27         db.close(stmt,con);
    28         return result;
    29     }
    30     public static void main(String[] args) throws Exception {
    31         // TODO Auto-generated method stub
    32         /*int result=add("java",888,"小卡",1);
    33         if(result==1){
    34             System.out.println("添加成功");
    35         }else{
    36             System.out.println("添加失败");
    37         }*/
    38         
    39         Book book=new Book("java2",888,"小卡2",1);
    40         int result=add2(book);
    41         if(result==1){
    42             System.out.println("添加成功");
    43         }else{
    44             System.out.println("添加失败");
    45         }    
    46     
    47     }
    48 }
    核心代码
     1 package com.util;
     2 
     3 import java.sql.Connection;
     4 import java.sql.DriverManager;
     5 import java.sql.SQLException;
     6 import java.sql.Statement;
     7 
     8 public class Dbutil {
     9     
    10     private static String url="jdbc:mysql://localhost:3306/db_person";//生命数据库的url(地址)
    11     private static String user="root";//数据库账号
    12     private static String password="123456";//数据库密码
    13     private static String driver="com.mysql.jdbc.Driver";//数据库的驱动
    14     
    15     /**
    16      * 
    17      * @return
    18      * @throws Exception
    19      */
    20     public Connection getCon() throws Exception{
    21         Class.forName(driver);//加载数据库驱动
    22         Connection con=DriverManager.getConnection(url, user, password);
    23         //建立数据库的连接,获得连接对象con
    24         return con;
    25     }
    26     
    27     /**
    28      * 
    29      * @param con
    30      * @throws Exception
    31      */
    32     public void close(Statement stmt,Connection con) throws Exception{
    33         if(stmt!=null){
    34             stmt.close();
    35             if(con!=null){
    36                 con.close();
    37             }
    38         }
    39             
    40     }
    41     
    42     
    43 }
    通用的



     1:使用Statement更新操作

     1 package com.ningmeng;
     2 
     3 import java.sql.Connection;
     4 import java.sql.Statement;
     5 
     6 import com.util.Dbutil;
     7 
     8 /**
     9  * 更新操作
    10  * @author biexiansheng
    11  *
    12  */
    13 public class Test3 {
    14     
    15     private static Dbutil db=new Dbutil();
    16     
    17     private static int update(Book book) throws Exception{
    18         Connection con=db.getCon();
    19         String sql="update db_book set name='"+book.getName()+"',price="+book.getPrice()+",author='"+book.getAuthor()+"',bookTypeId="+book.getBookTypeId()+" where id=13";
    20         Statement stmt=con.createStatement();//创建一个Statement连接
    21         int result=stmt.executeUpdate(sql);//执行sql语句
    22         db.close(stmt,con);
    23         return result;
    24     }
    25     
    26     public static void main(String[] args) throws Exception {
    27         Book book=new Book(13,"java120",666,"小别",1);
    28         int result=update(book);
    29         if(result==1){
    30             System.out.println("更新成功");
    31         }else{
    32             System.out.println("更新失败");
    33         }    
    34     }
    35 }
    核心代码
     1 package com.util;
     2 
     3 import java.sql.Connection;
     4 import java.sql.DriverManager;
     5 import java.sql.SQLException;
     6 import java.sql.Statement;
     7 
     8 public class Dbutil {
     9     
    10     private static String url="jdbc:mysql://localhost:3306/db_person";//生命数据库的url(地址)
    11     private static String user="root";//数据库账号
    12     private static String password="123456";//数据库密码
    13     private static String driver="com.mysql.jdbc.Driver";//数据库的驱动
    14     
    15     /**
    16      * 
    17      * @return
    18      * @throws Exception
    19      */
    20     public Connection getCon() throws Exception{
    21         Class.forName(driver);//加载数据库驱动
    22         Connection con=DriverManager.getConnection(url, user, password);
    23         //建立数据库的连接,获得连接对象con
    24         return con;
    25     }
    26     
    27     /**
    28      * 
    29      * @param con
    30      * @throws Exception
    31      */
    32     public void close(Statement stmt,Connection con) throws Exception{
    33         if(stmt!=null){
    34             stmt.close();
    35             if(con!=null){
    36                 con.close();
    37             }
    38         }
    39             
    40     }
    41     
    42     
    43 }
    通用代码
     1 package com.ningmeng;
     2 
     3 public class Book {
     4     
     5     private int id;
     6     private String name;
     7     private float price;
     8     private String author;
     9     private int bookTypeId;
    10     public String getName() {
    11         return name;
    12     }
    13     public void setName(String name) {
    14         this.name = name;
    15     }
    16     public float getPrice() {
    17         return price;
    18     }
    19     public void setPrice(float price) {
    20         this.price = price;
    21     }
    22     public String getAuthor() {
    23         return author;
    24     }
    25     public void setAuthor(String author) {
    26         this.author = author;
    27     }
    28     public int getBookTypeId() {
    29         return bookTypeId;
    30     }
    31     public void setBookTypeId(int bookTypeId) {
    32         this.bookTypeId = bookTypeId;
    33     }
    34     
    35     public int getId() {
    36         return id;
    37     }
    38     public void setId(int id) {
    39         this.id = id;
    40     }
    41     
    42     public Book(int id, String name, float price, String author, int bookTypeId) {
    43         super();
    44         this.id = id;
    45         this.name = name;
    46         this.price = price;
    47         this.author = author;
    48         this.bookTypeId = bookTypeId;
    49     }
    50     
    51     
    52     
    53     
    54     
    55     
    56 }
    封装代码

    (已经完成更新操作,需要注意的是在执行sql语句的时候由于语句过长可以使用eclipse自带的排版功能,完成排版)




     

    1:使用Statement执行删除操作

     1 package com.ningmeng;
     2 
     3 import java.sql.Connection;
     4 import java.sql.Statement;
     5 
     6 import com.util.Dbutil;
     7 
     8 public class Test4 {
     9 
    10     private static Dbutil db=new Dbutil();
    11     
    12     private static int delete(Book book) throws Exception{
    13         Connection con=db.getCon();
    14         String sql="delete from db_book where id="+book.getId();
    15         Statement stmt=con.createStatement();//创建一个Statement连接
    16         int result=stmt.executeUpdate(sql);//执行sql语句
    17         db.close(stmt,con);
    18         return result;
    19     }
    20     public static void main(String[] args) throws Exception{
    21         // TODO Auto-generated method stub
    22         Book book=new Book(13);
    23         int result=delete(book);
    24         if(result==1){
    25             System.out.println("删除成功");
    26         }else{
    27             System.out.println("删除失败");
    28         }    
    29     }
    30 
    31 }
    核心代码
     1 package com.util;
     2 
     3 import java.sql.Connection;
     4 import java.sql.DriverManager;
     5 import java.sql.SQLException;
     6 import java.sql.Statement;
     7 
     8 public class Dbutil {
     9     
    10     private static String url="jdbc:mysql://localhost:3306/db_person";//生命数据库的url(地址)
    11     private static String user="root";//数据库账号
    12     private static String password="123456";//数据库密码
    13     private static String driver="com.mysql.jdbc.Driver";//数据库的驱动
    14     
    15     /**
    16      * 
    17      * @return
    18      * @throws Exception
    19      */
    20     public Connection getCon() throws Exception{
    21         Class.forName(driver);//加载数据库驱动
    22         Connection con=DriverManager.getConnection(url, user, password);
    23         //建立数据库的连接,获得连接对象con
    24         return con;
    25     }
    26     
    27     /**
    28      * 
    29      * @param con
    30      * @throws Exception
    31      */
    32     public void close(Statement stmt,Connection con) throws Exception{
    33         if(stmt!=null){
    34             stmt.close();
    35             if(con!=null){
    36                 con.close();
    37             }
    38         }
    39             
    40     }
    41     
    42     
    43 }
    通用的
     1 package com.ningmeng;
     2 
     3 public class Book {
     4     
     5     private int id;
     6     private String name;
     7     private float price;
     8     private String author;
     9     private int bookTypeId;
    10     public String getName() {
    11         return name;
    12     }
    13     public void setName(String name) {
    14         this.name = name;
    15     }
    16     public float getPrice() {
    17         return price;
    18     }
    19     public void setPrice(float price) {
    20         this.price = price;
    21     }
    22     public String getAuthor() {
    23         return author;
    24     }
    25     public void setAuthor(String author) {
    26         this.author = author;
    27     }
    28     public int getBookTypeId() {
    29         return bookTypeId;
    30     }
    31     public void setBookTypeId(int bookTypeId) {
    32         this.bookTypeId = bookTypeId;
    33     }
    34     
    35     public int getId() {
    36         return id;
    37     }
    38     public void setId(int id) {
    39         this.id = id;
    40     }
    41     public Book(int id) {
    42         super();
    43         this.id = id;
    44     }
    45     
    46     
    47     
    48     
    49     
    50 }
    封装

    (可以看到删除操作执行完毕。)





     1:PreparedStatement是Statement的子接口,属于预处理操作,与直接使用Statement不同的是,PreparedStatement在操作时,是先在数据表中准备好了一条SQL语句,但是此SQL语句的具体内容暂时不设置,而是之后再进行设置。
    (以后开发一般用PreparedStatement,一般不用Statement)

    2:PreparedStatement插入操作

     1 package com.ningmeng;
     2 
     3 import java.sql.Connection;
     4 import java.sql.PreparedStatement;
     5 
     6 import com.util.Dbutil;
     7 
     8 public class Test5 {
     9     
    10     private static Dbutil db=new Dbutil();
    11     
    12     private static int add(Book book) throws Exception{
    13         Connection con=db.getCon();//建立数据库的连接
    14         String sql="insert into db_book values(null,?,?,?,?)";//生成一条SQL语句
    15         PreparedStatement pstmt=con.prepareStatement(sql);//创建Statement对象
    16         pstmt.setString(1,book.getName());
    17         pstmt.setFloat(2,book.getPrice());
    18         pstmt.setString(3,book.getAuthor());
    19         pstmt.setInt(4,book.getBookTypeId());
    20         int result=pstmt.executeUpdate();//执行SQL语句
    21         db.close(pstmt,con);
    22         return result;
    23     }
    24     public static void main(String[] args) throws Exception{
    25         // TODO Auto-generated method stub
    26         Book book =new Book("openstack",999,"小别",1);
    27         int result=add(book);
    28         if(result==1){
    29             System.out.println("插入成功");
    30         }else{
    31             System.out.println("插入失败");
    32         }
    33     }
    34 
    35 }
    核心代码
     1 package com.ningmeng;
     2 
     3 public class Book {
     4     
     5     private int id;
     6     private String name;
     7     private float price;
     8     private String author;
     9     private int bookTypeId;
    10     public String getName() {
    11         return name;
    12     }
    13     public void setName(String name) {
    14         this.name = name;
    15     }
    16     public float getPrice() {
    17         return price;
    18     }
    19     public void setPrice(float price) {
    20         this.price = price;
    21     }
    22     public String getAuthor() {
    23         return author;
    24     }
    25     public void setAuthor(String author) {
    26         this.author = author;
    27     }
    28     public int getBookTypeId() {
    29         return bookTypeId;
    30     }
    31     public void setBookTypeId(int bookTypeId) {
    32         this.bookTypeId = bookTypeId;
    33     }
    34     
    35     public int getId() {
    36         return id;
    37     }
    38     public void setId(int id) {
    39         this.id = id;
    40     }
    41     public Book(String name, float price, String author, int bookTypeId) {
    42         super();
    43         this.name = name;
    44         this.price = price;
    45         this.author = author;
    46         this.bookTypeId = bookTypeId;
    47     }
    48     
    49     
    50     
    51     
    52     
    53     
    54 }
    封装
     1 package com.util;
     2 
     3 import java.sql.Connection;
     4 import java.sql.DriverManager;
     5 import java.sql.PreparedStatement;
     6 import java.sql.Statement;
     7 
     8 public class Dbutil {
     9     
    10     private static String url="jdbc:mysql://localhost:3306/db_person";//生命数据库的url(地址)
    11     private static String user="root";//数据库账号
    12     private static String password="123456";//数据库密码
    13     private static String driver="com.mysql.jdbc.Driver";//数据库的驱动
    14     
    15     /**
    16      * 
    17      * @return
    18      * @throws Exception
    19      */
    20     public Connection getCon() throws Exception{
    21         Class.forName(driver);//加载数据库驱动
    22         Connection con=DriverManager.getConnection(url, user, password);
    23         //建立数据库的连接,获得连接对象con
    24         return con;
    25     }
    26     
    27     /**
    28      * 
    29      * @param con
    30      * @throws Exception
    31      */
    32     public void close(Statement stmt,Connection con) throws Exception{
    33         if(stmt!=null){
    34             stmt.close();
    35             if(con!=null){
    36                 con.close();
    37             }
    38         }
    39     }
    40     
    41     public void close(PreparedStatement pstmt,Connection con) throws Exception{
    42         if(pstmt!=null){
    43             pstmt.close();
    44             if(con!=null){
    45                 con.close();
    46             }
    47         }
    48     }
    49     
    50 }
    通用

    (如图已经完成插入操作)

    3:PreparedStatement更新操作

     1 package com.util;
     2 
     3 import java.sql.Connection;
     4 import java.sql.DriverManager;
     5 import java.sql.PreparedStatement;
     6 import java.sql.Statement;
     7 
     8 public class Dbutil {
     9     
    10     private static String url="jdbc:mysql://localhost:3306/db_person";//生命数据库的url(地址)
    11     private static String user="root";//数据库账号
    12     private static String password="123456";//数据库密码
    13     private static String driver="com.mysql.jdbc.Driver";//数据库的驱动
    14     
    15     /**
    16      * 
    17      * @return
    18      * @throws Exception
    19      */
    20     public Connection getCon() throws Exception{
    21         Class.forName(driver);//加载数据库驱动
    22         Connection con=DriverManager.getConnection(url, user, password);
    23         //建立数据库的连接,获得连接对象con
    24         return con;
    25     }
    26     
    27     /**
    28      * 
    29      * @param con
    30      * @throws Exception
    31      */
    32     public void close(Statement stmt,Connection con) throws Exception{
    33         if(stmt!=null){
    34             stmt.close();
    35             if(con!=null){
    36                 con.close();
    37             }
    38         }
    39     }
    40     
    41     public void close(PreparedStatement pstmt,Connection con) throws Exception{
    42         if(pstmt!=null){
    43             pstmt.close();
    44             if(con!=null){
    45                 con.close();
    46             }
    47         }
    48     }
    49     
    50 }
    通用
     1 package com.ningmeng;
     2 
     3 public class Book {
     4     
     5     private int id;
     6     private String name;
     7     private float price;
     8     private String author;
     9     private int bookTypeId;
    10     public String getName() {
    11         return name;
    12     }
    13     public void setName(String name) {
    14         this.name = name;
    15     }
    16     public float getPrice() {
    17         return price;
    18     }
    19     public void setPrice(float price) {
    20         this.price = price;
    21     }
    22     public String getAuthor() {
    23         return author;
    24     }
    25     public void setAuthor(String author) {
    26         this.author = author;
    27     }
    28     public int getBookTypeId() {
    29         return bookTypeId;
    30     }
    31     public void setBookTypeId(int bookTypeId) {
    32         this.bookTypeId = bookTypeId;
    33     }
    34     
    35     public int getId() {
    36         return id;
    37     }
    38     public void setId(int id) {
    39         this.id = id;
    40     }
    41     /*public Book(String name, float price, String author, int bookTypeId) {
    42         super();
    43         this.name = name;
    44         this.price = price;
    45         this.author = author;
    46         this.bookTypeId = bookTypeId;
    47     }*/
    48     public Book(int id, String name, float price, String author, int bookTypeId) {
    49         super();
    50         this.id = id;
    51         this.name = name;
    52         this.price = price;
    53         this.author = author;
    54         this.bookTypeId = bookTypeId;
    55     }
    56     
    57     
    58     
    59     
    60     
    61     
    62 }
    封装
     1 package com.ningmeng;
     2 
     3 import java.sql.Connection;
     4 import java.sql.PreparedStatement;
     5 
     6 
     7 import com.util.Dbutil;
     8 
     9 public class Test6 {
    10 
    11     private static Dbutil db=new Dbutil();
    12 
    13     private static int add(Book book) throws Exception{
    14         Connection con=db.getCon();//建立数据库的连接
    15         String sql="update db_book set name=?,price=?,author=?,bookTypeId=? where id=?";//生成一条SQL语句
    16         PreparedStatement pstmt=con.prepareStatement(sql);//创建Statement对象
    17         pstmt.setString(1,book.getName());
    18         pstmt.setFloat(2,book.getPrice());
    19         pstmt.setString(3,book.getAuthor());
    20         pstmt.setInt(4,book.getBookTypeId());
    21         pstmt.setInt(5,book.getId());
    22         int result=pstmt.executeUpdate();//执行SQL语句
    23         db.close(pstmt,con);
    24         return result;
    25     }
    26     public static void main(String[] args) throws Exception{
    27         // TODO Auto-generated method stub
    28         Book book =new Book(16,"javaweb",222,"小ma",1);
    29         int result=add(book);
    30         if(result==1){
    31             System.out.println("更新成功");
    32         }else{
    33             System.out.println("更新失败");
    34         }
    35         
    36     }
    37 }
    核心代码

    (有图可见,已经完成更新操作)

    4:PreparedStatement删除操作

     1 package com.ningmeng;
     2 
     3 import java.sql.Connection;
     4 import java.sql.PreparedStatement;
     5 
     6 import com.util.Dbutil;
     7 
     8 public class Test7 {
     9 
    10     private static Dbutil db=new Dbutil();
    11 
    12     private static int add(Book book) throws Exception{
    13         Connection con=db.getCon();//建立数据库的连接
    14         String sql="delete from db_book where id=?";//生成一条SQL语句
    15         PreparedStatement pstmt=con.prepareStatement(sql);//创建Statement对象
    16         pstmt.setInt(1,book.getId());
    17         int result=pstmt.executeUpdate();//执行SQL语句
    18         db.close(pstmt,con);
    19         return result;
    20     }
    21     public static void main(String[] args) throws Exception{
    22         // TODO Auto-generated method stub
    23         Book book =new Book(16);
    24         int result=add(book);
    25         if(result==1){
    26             System.out.println("删除成功");
    27         }else{
    28             System.out.println("删除失败");
    29         }
    30         
    31     }
    32 }
    核心代码
     1 package com.util;
     2 
     3 import java.sql.Connection;
     4 import java.sql.DriverManager;
     5 import java.sql.PreparedStatement;
     6 import java.sql.Statement;
     7 
     8 public class Dbutil {
     9     
    10     private static String url="jdbc:mysql://localhost:3306/db_person";//生命数据库的url(地址)
    11     private static String user="root";//数据库账号
    12     private static String password="123456";//数据库密码
    13     private static String driver="com.mysql.jdbc.Driver";//数据库的驱动
    14     
    15     /**
    16      * 
    17      * @return
    18      * @throws Exception
    19      */
    20     public Connection getCon() throws Exception{
    21         Class.forName(driver);//加载数据库驱动
    22         Connection con=DriverManager.getConnection(url, user, password);
    23         //建立数据库的连接,获得连接对象con
    24         return con;
    25     }
    26     
    27     /**
    28      * 
    29      * @param con
    30      * @throws Exception
    31      */
    32     public void close(Statement stmt,Connection con) throws Exception{
    33         if(stmt!=null){
    34             stmt.close();
    35             if(con!=null){
    36                 con.close();
    37             }
    38         }
    39     }
    40     
    41     public void close(PreparedStatement pstmt,Connection con) throws Exception{
    42         if(pstmt!=null){
    43             pstmt.close();
    44             if(con!=null){
    45                 con.close();
    46             }
    47         }
    48     }
    49     
    50 }
    通用
     1 package com.ningmeng;
     2 
     3 public class Book {
     4     
     5     private int id;
     6     private String name;
     7     private float price;
     8     private String author;
     9     private int bookTypeId;
    10     public String getName() {
    11         return name;
    12     }
    13     public void setName(String name) {
    14         this.name = name;
    15     }
    16     public float getPrice() {
    17         return price;
    18     }
    19     public void setPrice(float price) {
    20         this.price = price;
    21     }
    22     public String getAuthor() {
    23         return author;
    24     }
    25     public void setAuthor(String author) {
    26         this.author = author;
    27     }
    28     public int getBookTypeId() {
    29         return bookTypeId;
    30     }
    31     public void setBookTypeId(int bookTypeId) {
    32         this.bookTypeId = bookTypeId;
    33     }
    34     
    35     public int getId() {
    36         return id;
    37     }
    38     public void setId(int id) {
    39         this.id = id;
    40     }
    41     /*public Book(String name, float price, String author, int bookTypeId) {
    42         super();
    43         this.name = name;
    44         this.price = price;
    45         this.author = author;
    46         this.bookTypeId = bookTypeId;
    47     }*/
    48     /*public Book(int id, String name, float price, String author, int bookTypeId) {
    49         super();
    50         this.id = id;
    51         this.name = name;
    52         this.price = price;
    53         this.author = author;
    54         this.bookTypeId = bookTypeId;
    55     }*/
    56     public Book(int id) {
    57         super();
    58         this.id = id;
    59     }
    60     
    61     
    62     
    63     
    64     
    65     
    66 }
    封装

    (执行删除操作完成后如图)





     

    1:ResultSet接口的使用

     1 package com.ningmeng;
     2 
     3 import java.sql.Connection;
     4 import java.sql.PreparedStatement;
     5 import java.sql.ResultSet;
     6 
     7 import com.util.Dbutil;
     8 
     9 public class Test8 {
    10 
    11     private static Dbutil db=new Dbutil();
    12     
    13     public static void select() throws Exception{
    14         Connection con=db.getCon();
    15         String sql="select * from db_book";
    16         PreparedStatement pstmt=con.prepareStatement(sql);
    17         ResultSet rs=pstmt.executeQuery();
    18         while(rs.next()){
    19             int id=rs.getInt(1);//id  开发的时候一般使用数据库字段名
    20             String name=rs.getString(2);//name
    21             float price=rs.getFloat(3);//price
    22             String author=rs.getString(4);//author
    23             int bookTypeId=rs.getInt(5);//bookTypeId
    24             System.out.println(id+"\t"+name+"\t"+price+"\t"+author+"\t"+bookTypeId);
    25         }
    26         
    27     }
    28     public static void main(String[] args) throws Exception {
    29         // TODO Auto-generated method stub
    30         select();
    31     }
    32 
    33 }
    核心代码
     1 package com.util;
     2 
     3 import java.sql.Connection;
     4 import java.sql.DriverManager;
     5 import java.sql.PreparedStatement;
     6 import java.sql.Statement;
     7 
     8 public class Dbutil {
     9     
    10     private static String url="jdbc:mysql://localhost:3306/db_person";//生命数据库的url(地址)
    11     private static String user="root";//数据库账号
    12     private static String password="123456";//数据库密码
    13     private static String driver="com.mysql.jdbc.Driver";//数据库的驱动
    14     
    15     /**
    16      * 
    17      * @return
    18      * @throws Exception
    19      */
    20     public Connection getCon() throws Exception{
    21         Class.forName(driver);//加载数据库驱动
    22         Connection con=DriverManager.getConnection(url, user, password);
    23         //建立数据库的连接,获得连接对象con
    24         return con;
    25     }
    26     
    27     /**
    28      * 
    29      * @param con
    30      * @throws Exception
    31      */
    32     public void close(Statement stmt,Connection con) throws Exception{
    33         if(stmt!=null){
    34             stmt.close();
    35             if(con!=null){
    36                 con.close();
    37             }
    38         }
    39     }
    40     
    41     public void close(PreparedStatement pstmt,Connection con) throws Exception{
    42         if(pstmt!=null){
    43             pstmt.close();
    44             if(con!=null){
    45                 con.close();
    46             }
    47         }
    48     }
    49     
    50 }
    通用
     1 package com.ningmeng;
     2 
     3 public class Book {
     4     
     5     private int id;
     6     private String name;
     7     private float price;
     8     private String author;
     9     private int bookTypeId;
    10     public String getName() {
    11         return name;
    12     }
    13     public void setName(String name) {
    14         this.name = name;
    15     }
    16     public float getPrice() {
    17         return price;
    18     }
    19     public void setPrice(float price) {
    20         this.price = price;
    21     }
    22     public String getAuthor() {
    23         return author;
    24     }
    25     public void setAuthor(String author) {
    26         this.author = author;
    27     }
    28     public int getBookTypeId() {
    29         return bookTypeId;
    30     }
    31     public void setBookTypeId(int bookTypeId) {
    32         this.bookTypeId = bookTypeId;
    33     }
    34     
    35     public int getId() {
    36         return id;
    37     }
    38     public void setId(int id) {
    39         this.id = id;
    40     }
    41     /*public Book(String name, float price, String author, int bookTypeId) {
    42         super();
    43         this.name = name;
    44         this.price = price;
    45         this.author = author;
    46         this.bookTypeId = bookTypeId;
    47     }*/
    48     public Book(int id, String name, float price, String author, int bookTypeId) {
    49         super();
    50         this.id = id;
    51         this.name = name;
    52         this.price = price;
    53         this.author = author;
    54         this.bookTypeId = bookTypeId;
    55     }
    56     public Book(int id) {
    57         super();
    58         this.id = id;
    59     }
    60 
    61 }
    封装

    2:以后开发使用的举例

     

     1 package com.ningmeng;
     2 
     3 
     4 import java.sql.Connection;
     5 import java.sql.PreparedStatement;
     6 import java.sql.ResultSet;
     7 import java.util.ArrayList;
     8 import java.util.List;
     9 
    10 import com.util.Dbutil;
    11 
    12 public class Test9 {
    13 
    14     private static Dbutil db=new Dbutil();
    15     
    16     private static List<Book> select() throws Exception{
    17         List<Book> list=new ArrayList<Book>();
    18         Connection con=db.getCon();
    19         String sql="select * from db_book";
    20         PreparedStatement pstmt=con.prepareStatement(sql);
    21         ResultSet rs=pstmt.executeQuery();
    22         while(rs.next()){
    23             int id=rs.getInt(1);//id  开发的时候一般使用数据库字段名
    24             String name=rs.getString(2);//name
    25             float price=rs.getFloat(3);//price
    26             String author=rs.getString(4);//author
    27             int bookTypeId=rs.getInt(5);//bookTypeId
    28             Book book=new Book(id,name,price,author,bookTypeId);
    29             list.add(book);
    30         }
    31         return list;
    32         
    33     }
    34     public static void main(String[] args) throws Exception {
    35         // TODO Auto-generated method stub
    36         List<Book> list=select();
    37         for(Book book : list){
    38             System.out.println(book);
    39         }
    40     }
    41 
    42 }
    核心代码

     

     1 package com.util;
     2 
     3 import java.sql.Connection;
     4 import java.sql.DriverManager;
     5 import java.sql.PreparedStatement;
     6 import java.sql.Statement;
     7 
     8 public class Dbutil {
     9     
    10     private static String url="jdbc:mysql://localhost:3306/db_person";//生命数据库的url(地址)
    11     private static String user="root";//数据库账号
    12     private static String password="123456";//数据库密码
    13     private static String driver="com.mysql.jdbc.Driver";//数据库的驱动
    14     
    15     /**
    16      * 
    17      * @return
    18      * @throws Exception
    19      */
    20     public Connection getCon() throws Exception{
    21         Class.forName(driver);//加载数据库驱动
    22         Connection con=DriverManager.getConnection(url, user, password);
    23         //建立数据库的连接,获得连接对象con
    24         return con;
    25     }
    26     
    27     /**
    28      * 
    29      * @param con
    30      * @throws Exception
    31      */
    32     public void close(Statement stmt,Connection con) throws Exception{
    33         if(stmt!=null){
    34             stmt.close();
    35             if(con!=null){
    36                 con.close();
    37             }
    38         }
    39     }
    40     
    41     public void close(PreparedStatement pstmt,Connection con) throws Exception{
    42         if(pstmt!=null){
    43             pstmt.close();
    44             if(con!=null){
    45                 con.close();
    46             }
    47         }
    48     }
    49     
    50 }
    通用
     1 package com.ningmeng;
     2 
     3 public class Book {
     4     
     5     private int id;
     6     private String name;
     7     private float price;
     8     private String author;
     9     private int bookTypeId;
    10     public String getName() {
    11         return name;
    12     }
    13     public void setName(String name) {
    14         this.name = name;
    15     }
    16     public float getPrice() {
    17         return price;
    18     }
    19     public void setPrice(float price) {
    20         this.price = price;
    21     }
    22     public String getAuthor() {
    23         return author;
    24     }
    25     public void setAuthor(String author) {
    26         this.author = author;
    27     }
    28     public int getBookTypeId() {
    29         return bookTypeId;
    30     }
    31     public void setBookTypeId(int bookTypeId) {
    32         this.bookTypeId = bookTypeId;
    33     }
    34     
    35     public int getId() {
    36         return id;
    37     }
    38     public void setId(int id) {
    39         this.id = id;
    40     }
    41     /*public Book(String name, float price, String author, int bookTypeId) {
    42         super();
    43         this.name = name;
    44         this.price = price;
    45         this.author = author;
    46         this.bookTypeId = bookTypeId;
    47     }*/
    48     public Book(int id, String name, float price, String author, int bookTypeId) {
    49         super();
    50         this.id = id;
    51         this.name = name;
    52         this.price = price;
    53         this.author = author;
    54         this.bookTypeId = bookTypeId;
    55     }
    56     public Book(int id) {
    57         super();
    58         this.id = id;
    59     }
    60     @Override
    61     public String toString() {
    62         return "Book [id=" + id + ", name=" + name + ", price=" + price + ", author=" + author + ", bookTypeId="
    63                 + bookTypeId + "]";
    64     }
    65 
    66     
    67 }
    封装




    1:处理大数据对象

    大数据对象处理主要有CLOB(character large object)和BLOB(binary large object)两种类型的字段;在CLOB中可以存储大字符数据对象,比如长篇小说;在BLOB中可以存放二进制大数据对象,比如图片,电影,音乐;

     1 package com.ningmeng;
     2 
     3 import java.io.File;
     4 import java.io.FileInputStream;
     5 import java.io.FileOutputStream;
     6 import java.io.InputStream;
     7 import java.sql.Blob;
     8 import java.sql.Clob;
     9 import java.sql.Connection;
    10 import java.sql.PreparedStatement;
    11 import java.sql.ResultSet;
    12 
    13 import com.util.Dbutil;
    14 
    15 public class Test10 {
    16 
    17     private static Dbutil db=new Dbutil();
    18     
    19     private static int add(Book book) throws Exception{
    20         Connection con=db.getCon();//建立数据库的连接
    21         String sql="insert into db_book values(null,?,?,?,?,?,?)";//生成一条SQL语句
    22         PreparedStatement pstmt=con.prepareStatement(sql);//创建Statement对象
    23         pstmt.setString(1,book.getName());
    24         pstmt.setFloat(2,book.getPrice());
    25         pstmt.setString(3,book.getAuthor());
    26         pstmt.setInt(4,book.getBookTypeId());
    27         
    28         File context=book.getContext();
    29         InputStream input=new FileInputStream(context);
    30         pstmt.setAsciiStream(5, input,context.length());
    31         
    32         File pic=book.getPic();
    33         InputStream input2=new FileInputStream(pic);
    34         pstmt.setBinaryStream(6, input2,pic.length());
    35         
    36         
    37         int result=pstmt.executeUpdate();//执行SQL语句
    38         db.close(pstmt,con);
    39         return result;
    40     }
    41     
    42     public static void read(Book book) throws Exception{
    43         Connection con=db.getCon();
    44         String sql="select * from db_book where id="+book.getId();
    45         PreparedStatement pstmt= con.prepareStatement(sql);
    46         ResultSet rs=pstmt.executeQuery();
    47         while(rs.next()){
    48             int id=rs.getInt("id");
    49             String name=rs.getString("name");
    50             float price=rs.getFloat("price");
    51             String author=rs.getString("author");
    52             int bookTypeId=rs.getInt("bookTypeId");
    53             Clob c=rs.getClob("context");
    54             String context=c.getSubString(1,(int)c.length());
    55             
    56             Blob b=rs.getBlob("pic"); 
    57             FileOutputStream fos=new FileOutputStream("G:/1.png");
    58             fos.write(b.getBytes(1, (int) b.length()));
    59             fos.close();
    60                 
    61             System.out.println("id"+"\t"+name+"\t"+price+"\t"+author+"\t"+bookTypeId+"\t"+context);
    62             
    63            
    64         }
    65         db.close(pstmt, con);
    66     }
    67     
    68     public static void main(String[] args) throws Exception{
    69         // TODO Auto-generated method stub
    70         /*File context=new File("F:/子查询.txt");
    71         File pic=new File("F:/1.png");
    72         Book book=new Book("javaweb",888,"小别",1,context,pic);
    73         int result=add(book);
    74         if(result==1){
    75             System.out.println("插入成功");
    76         }else{
    77             System.out.println("插入失败");
    78         }*/
    79         
    80         Book book2=new Book(19);
    81         read(book2);
    82         
    83         
    84     }
    85 
    86 }
    核心代码
      1 package com.ningmeng;
      2 
      3 import java.io.File;
      4 
      5 public class Book {
      6     
      7     private int id;
      8     private String name;
      9     private float price;
     10     private String author;
     11     private int bookTypeId;
     12     private File context;//处理文本
     13     private File pic;//处理图片的
     14     
     15     public String getName() {
     16         return name;
     17     }
     18     public void setName(String name) {
     19         this.name = name;
     20     }
     21     public float getPrice() {
     22         return price;
     23     }
     24     public void setPrice(float price) {
     25         this.price = price;
     26     }
     27     public String getAuthor() {
     28         return author;
     29     }
     30     public void setAuthor(String author) {
     31         this.author = author;
     32     }
     33     public int getBookTypeId() {
     34         return bookTypeId;
     35     }
     36     public void setBookTypeId(int bookTypeId) {
     37         this.bookTypeId = bookTypeId;
     38     }
     39     
     40     public int getId() {
     41         return id;
     42     }
     43     public void setId(int id) {
     44         this.id = id;
     45     }
     46     
     47     
     48     public File getContext() {
     49         return context;
     50     }
     51     public void setContext(File context) {
     52         this.context = context;
     53     }
     54     
     55     
     56     public File getPic() {
     57         return pic;
     58     }
     59     public void setPic(File pic) {
     60         this.pic = pic;
     61     }
     62     
     63     
     64     /*public Book(String name, float price, String author, int bookTypeId) {
     65         super();
     66         this.name = name;
     67         this.price = price;
     68         this.author = author;
     69         this.bookTypeId = bookTypeId;
     70     }*/
     71     public Book(int id, String name, float price, String author, int bookTypeId) {
     72         super();
     73         this.id = id;
     74         this.name = name;
     75         this.price = price;
     76         this.author = author;
     77         this.bookTypeId = bookTypeId;
     78     }
     79     public Book(int id) {
     80         super();
     81         this.id = id;
     82     }
     83     @Override
     84     public String toString() {
     85         return "Book [id=" + id + ", name=" + name + ", price=" + price + ", author=" + author + ", bookTypeId="
     86                 + bookTypeId + "]";
     87     }
     88     public Book(String name, float price, String author, int bookTypeId, File context) {
     89         super();
     90         this.name = name;
     91         this.price = price;
     92         this.author = author;
     93         this.bookTypeId = bookTypeId;
     94         this.context = context;
     95     }
     96     public Book(String name, float price, String author, int bookTypeId, File context, File pic) {
     97         super();
     98         this.name = name;
     99         this.price = price;
    100         this.author = author;
    101         this.bookTypeId = bookTypeId;
    102         this.context = context;
    103         this.pic = pic;
    104     }
    105 
    106     
    107     
    108     //构造方法是根据不同的初始化对象的需要构造的
    109 }
    封装
     1 package com.util;
     2 
     3 import java.sql.Connection;
     4 import java.sql.DriverManager;
     5 import java.sql.PreparedStatement;
     6 import java.sql.Statement;
     7 
     8 public class Dbutil {
     9     
    10     private static String url="jdbc:mysql://localhost:3306/db_person";//生命数据库的url(地址)
    11     private static String user="root";//数据库账号
    12     private static String password="123456";//数据库密码
    13     private static String driver="com.mysql.jdbc.Driver";//数据库的驱动
    14     
    15     /**
    16      * 
    17      * @return
    18      * @throws Exception
    19      */
    20     public Connection getCon() throws Exception{
    21         Class.forName(driver);//加载数据库驱动
    22         Connection con=DriverManager.getConnection(url, user, password);
    23         //建立数据库的连接,获得连接对象con
    24         return con;
    25     }
    26     
    27     /**
    28      * 
    29      * @param con
    30      * @throws Exception
    31      */
    32     public void close(Statement stmt,Connection con) throws Exception{
    33         if(stmt!=null){
    34             stmt.close();
    35             if(con!=null){
    36                 con.close();
    37             }
    38         }
    39     }
    40     
    41     public void close(PreparedStatement pstmt,Connection con) throws Exception{
    42         if(pstmt!=null){
    43             pstmt.close();
    44             if(con!=null){
    45                 con.close();
    46             }
    47         }
    48     }
    49     
    50 }
    通用

     

    展开全文
  • ABAP数据库更新数据

    万次阅读 2016-11-26 14:52:22
    Open SQL中使用INSERT、UPDATE、MODIFY和DELETE语句进行数据更新操作,其中当SY-DBCNT返回为0,则表示操作成功,此外还将返回实际操作的...Open SQL中的INSERT语句用于向数据库中插入新条目。 1.插入单行数据: I

    Open SQL中使用INSERT、UPDATE、MODIFY和DELETE语句进行数据的更新操作,其中当SY-DBCNT返回为0,则表示操作成功,此外还将返回实际操作的数据行数。需要指明的是Open SQL本身并不进行操作权限的检查,若需要进行设定,则要在系统中创建授权对象。

    一.INSERT语句
    Open SQL中的INSERT语句用于向数据库中插入新条目。
    1.插入单行数据:
    INSERT INTO dbtab VALUES wa.
    INSERT INTO dbtab FROM wa.
    wa为工作区,是与数据库具有相同结构的数据对象,一般直接基于数据库结构声明。该语句也可以将数据插入视图中,首先该视图所有字段必须来自同一个数据库表,而且在数据字典中的maintenance status属性必须设定为read and change
    注:如果相同表关键字的数据条目已经存在,则不能重新插入,只能对非关键字进行更改(UPDATE,MODIFY)
    2.插入多行数据
    INSERT dbtab FROM TABLES itab.
    其中itab是内表,包含希望插入的数据条目。
    注:内表应与数据库的行结构一致。
    所有条目成功插入,则SY-SUBRC返回0
    使用ACCEPTING DUPLICATE可避免该错误。
    INSERT dbtab FROM TABLE itab ACCEPTING DUPLICATE KEYS. 
    ACCEPTING DUPLICATE的效果是:若出现关键字相同,返回4,并跳过其再更新所有的其他。

    二.UPDATE语句
    1.更新单行数据:
    UPDATE dbtab SET f1=g1 ... fn=gn WHERE .
    f表组建字段名,g为新设定的值,WHERE为确保只更新单行。
    注:除f=g外还可 f=f+g、f=f-g
    通过工作区更改单行数据:
    UPDATE dbtab FROM wa.
    2.更新多行数据:
    UPDATE dbtab SET f1=g1 ... fi=gi [WHERE ].
    也可以使用SET和WHERE子句同时更新多行数据值;此外不需要在WHERE中限定所有表关键字,该语句本身将更新所有满足条件的数据条目,若不是用WHERE子句,则将更新当前数据集团中的所有数据行。
    注:如果至少有一行数据被更新SY-BUBRC返回0,否则返回4。
    还可通过内表来更新多行数据:
    UPDATE target FROM TABLE itab.

    三.MODIFY语句
    MODIFY语句是SAP的Open SQL中专有语句,该语句相当于INSERT和UPDATE语句的结合。引入期的原因是当更新数据库操作时,并不确知数据库中是否遗憾相应的数据行。
    1.添加或更新单行:
    MODIFY dbtab FROM wa.
    注:操作后SY-SUBRC恒为0;SY-DBCNT为1
    2.添加或更新多行:
    MODIFY dbtab FROM TABLE itab.
    内表itab将覆盖数据库表中具有相同主关键字的条目。
    注:SY-SUBRC恒为0;SY-DBCNT返回行数

    四.DELETE语句
    1.删除单行数据:
    DELETE FROM dbtab WHERE .
    或 DELETE dbtab FROM wa.
    其中WHERE必须指明全部表关键字段的值;wa为工作区,若不去dbtab匹配操作将失败。
    2.删除多行数据:
    DELETE FROM dbtab WHERE .
    DELETE dbtab[CLIENT SPECIFIED] FROM TABLE itab.
    注:返回值同MODIFY
    3.删除多行数据:
    两种形式:1).通过内表删除多行数据条目的过程中将内表置为空;2).使用WHERE FIELD LIKE '%'。

    展开全文
  • Java实现Excel导入数据库,如果存在就更新数据库中数据导入到Excel   1、添加jxl.jar mysql-connector-java.1.7-bin.jar包到项目的lib目录下­ 2、Excel文件目录:D://book.xls 3、数据库名:jave
  • bitemcode,Fumber,在b 数据库中 bitemcode 的值是空的,现在想要使用触发器 把 数据库 a 中的 itemcode 字段的值 刷 到 b 数据库的bitemcode 字段, 通过比较 oldFumber 和 Fumber 这两个字段的内容 是否一样,...
  • 我们知道在数据库中保证数据的微信性是十分必要的,这也就是有主键的一个原因,但是数据肯定是需要更新的,当然我们可以按照日期或者其他维度进行数据的永不冲突的更新。但是还有一种情况下需要我们迭代的去更新数据...
  • 在某一方法对A对象进行修...
  • JDBC更新数据库中数据

    千次阅读 2017-12-25 10:41:48
    JDBC的功能基本上归结为三件事,即建立数据库连接,发送SQL语句和处理查询结果。   JDBC详细步骤: 1.导包(先将驱动包拷贝到项目目录下,再解压) 路径:D:\oracle\product\10.2.0\db_1\jdbc\lib 找到路径...
  • 3. 数据更新插入mysql数据库中 import pymysql db = pymysql.connect(host='localhost',user='root', password='123456', port=3306, db='spiders') data = { 'id': '20180606', 'name': 'Lily', 'age': 25 } ...
  • 计算机科学系实验报告(首页) ...数据库中数据更新 教导教师 索剑 姓名 张钦颖 学号 1414080901218 组号   日期 2016年4月12日
  • 首先打开数据库,输入命令切换到world数据库; use world;再查看里面有什么: select * from country; 发现里面的数据挺老的;...从数据库读取大块数据,并且显示在Grid View Control,并且可以更新
  • Mybatis Oracle数据库批量更新数据

    千次阅读 2018-12-15 18:01:37
    最近在项目用到了批量数据的问题,记录一下 第一层、控制层代码: @RestController @RequestMapping(&quot;/dsDetailEntity&quot;) public class demmoController { @Autowired DmDsDetailService...
  • 本文关键词:VS2008运行工程,Access数据库中数据更新不了,数据库中数据被还原,数据添加不了,往数据库添加数据后被还原 起因:  某童鞋告诉我说,往Access数据库中添加数据时(其在VS2008中开发数据库程序,...
  • 在保证需操作的数据库中已经存在XSKC模式下的数据表student、course、sc 1、修改数据表信息 1)修改student表,将cs系姓名为“李咏”的学生姓名为“李勇” UPDATE XSKC.student SET sname = ‘李勇’ WHERE ...
  • public static void AddToFavorite(int songId,Long time){ ... 更新数据库中数据程序崩溃报错no such column: time 但打开数据库发现数据却已经更新成功 而且time字段是存在的 这是什么原因啊。。
  • 两个access数据库A.mdb和B.mdb,里面分别有几个数据表分别为a,b,c, B数据库中的a,b,c中仅有一个字段与A不同且需要随时更新。 其中A数据库在不断添加新的内容,怎么把新加入的数据添加到B数据库对应的数据表中?
  • 可查询历史日志找到误更新的时间点 然后按接下来操作即可 -- 查看某个时间点的表的数据 select * from IMS_PRODUCTINFO as of timestamp "TO_TIMESTAMP"('2020-06-09 16:22:13', 'yyyy-mm-dd hh24:mi:ss') -- 开启...
  • from pymysql import * def main(): # 创建connection连接 conn = connect(host='', port=3306, database='', user='', password='', charset='utf8') # 获取cursor对象 cs1 = conn.cu...
  • 现在我想定时把orc1上跑了一天的数据更新到orc2上去(每天更新一次),就是保证orc1和orc2上相同表的数据一致。需要每天来更新,想问问具体怎么整,本人菜鸟一枚,对oracle了解有限,希望大神给点意见
  • 数据库实验之数据更新

    千次阅读 2018-09-19 22:05:11
    一、实验目的: ... 建立相关数据库,并在数据库中建立表,表中有一定量的记录。     三、实验内容: (写出主要的内容)   Part 1 使用课程数据库 对于student表,将所有所在系部信息为’CS’...
  • Java实现Excel导入数据库,数据库中数据导入到Excel 自学资料总结  实现的功能:Java实现Excel导入数据库,如果存在就更新 数据库中数据导入到Excel  1、添加jxl.jar mysql-connector-java.1.7-bin....
  • 对于根据主键,判断数据是直接插入数据库还是更新数据库,在mysql仅需在普通的插入语句后边添加 on duplicate key update pro1=values(pro1), pro2=values(pro2); 如:insert into table1 (id, pro1, pro2, ...
  • java,怎么实现每隔5秒读取excel一行的数据呢,第一次读的是第一行的数据,然后把从excel读取的数据更新数据库对应的字段的数据,第二次读的是第2行的数据,再去更新数据库数据
  • 更新指定的内容 通过上一关的学习,我们已经掌握了INSERT操作!同样,UPDATE操作也很简单,只要记住UPDATE语句三要素就能轻松掌握,它们分别是: 需要更新的表(table)名; 需要更新的字段(column)名和它的新...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 34,369
精华内容 13,747
关键字:

数据库中更新数据