zoukankan      html  css  js  c++  java
  • Java

    Java 连接SQL

    数据库连接

    import java.sql.*; // 全部导入
    
    public class DemoFrame{
        public static Connection conn = null;
        public static Statement stmt = null; 
        	// 尽管将stmt设为全局比较方便,但一个stmt使用多次可能会出现错误(rs未关闭),此时应该先写rs.last();
        	// 更好的方法,是将stmt 设为局部变量,每次需要执行新语句都重新创建stmt
        	// Statement stmt1 = conn.createStatement();
        	// ResultSet rs = stmt1.executeQuery(...);
        
        public static void main(String[] args){
            try{
    	      // 连接数据库
    	      conn = DriverManager.getConnection("jdbc:mysql://localhost/myshop?serverTimezone=GMT%2B8&characterEncoding=utf8","root", "");
                  EventQueue.invokeLater(new Runnable() {
    			public void run() {
    				try {
    					DemoFrame frame = new Hahah(); // 创建窗口
    					frame.setVisible(true);
    				} catch (Exception e) {
    					e.printStackTrace();
    				}
    			}
    		});
            }catch(SQLException ex){
    		// 输出提示信息
    		JOptionPane.showConfirmDialog(null,"发生意外错误","系统消息",JOptionPane.CLOSED_OPTION);
    		ex.printStackTrace();
            }
        }
    };
    

    数据库操纵

    • 查询操作
    stmt.executeQuery("...");
    /*
    MySQL语法格式:
    
    select * from [table_name] where [boolean expression]
    
    e.g: 查询商品名为'小汽车'的商品信息
    
    MySQL:    select * from items where 名称='小汽车'
    Java: 
    	Statement stmt = conn.createStatement();
        ResultSet rs = stmt.executeQuery("select * from items where 名称='小汽车'");
    */
    
    • 插值操作
    stmt.executeUpdate("...");
    /*
    MySQL语法格式:
    insert into [table_name] values(a,b,c,d,e,...)
    
    e.g: 插入一条商品信息
    
    MySQL:	insert into items values('001','小汽车',100,100,0);
    Java:
    	Statement stmt = conn.createStatement();
    	stmt.executeUpdae("insert into items values('001','小汽车',100,100,0)");
    */
    
    • 改值操作
    stmt.executeUpdate("...")
    /*
    MySQL语法格式:
    update [table_name] set [c1]=[v1],[c2=v2],... where [boolean expression]
    
    e.g: 修改商品编号为001的商品,使其价格变为100,库存变为200
    
    MySQL: update items set 单价=100 where 编号='001'
    Java:
    	Statement stmt = conn.createStatement();
    	stmt.executeUpdate("update items set 单价=10,库存=200 where 编号='001'");
    */
    

    ResultSet 使用

    这一部分很简单,不需要了解太多

    ResultSet rs = stmt.executeQuery("..."); // 获取方式
    while(rs.next()){
        // rs.getString( cNum )
        // rs.getInt( cNum )
    }
    

    只有一点需要注意,rs在调用get()方法之前,一定要执行.next()

    ---- suffer now and live the rest of your life as a champion ----
  • 相关阅读:
    13.11.1 __bases__类属性:
    logstash 删除message host字段
    数据科学:Oracle 并购 DataScience 公司提升机器学习能力
    继承
    python 创建子类
    Python第三方库的使用
    13.8.1 staticmethod()和 classmethod()内建函数
    实例方法和类方法
    CSS常用遮罩层
    CSS常用遮罩层
  • 原文地址:https://www.cnblogs.com/popodynasty/p/14141086.html
Copyright © 2011-2022 走看看