A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© 路人丶 中级黑马   /  2017-12-28 21:48  /  1680 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

今天数据库的第二天学习,讲了SQL查询的排序,分组,函数,又学习了JDBC,java连接数据库,用java代码操作数据库,不得不吐槽一句作业做着实在是太打脑壳了,程序员最多的果然是ctrl+c,ctrl+v;
高级查询
                -- 排序  (desc 降序 asc 升序(默认))
                SELECT * FROM zhangwu ORDER BY zmoney DESC;
                -- by 后面跟两个,次级排序
                SELECT id,zmoney FROM zhangwu ORDER BY zmoney,id DESC;

                -- 聚合函数 count sum avg max min
                SELECT COUNT(*) FROM zhangwu;
                SELECT SUM(zmoney) FROM zhangwu;
                SELECT AVG(zmoney) FROM zhangwu;

                -- 分组查询
                -- 按zname分组计算总额
                SELECT SUM(zmoney),zname FROM zhangwu GROUP BY zname;
                -- 查询所有不同支出分别的总额
                SELECT SUM(zmoney),zname FROM zhangwu WHERE zname LIKE '%支出%' GROUP BY zname;
                -- 显示上面 总额大于800的
                SELECT SUM(zmoney) AS 总额,zname FROM zhangwu WHERE zname LIKE '%支出%' GROUP BY zname
                HAVING 总额>800;
                -- 上面升序
                SELECT SUM(zmoney) AS 总额,zname FROM zhangwu WHERE zname LIKE '%支出%' GROUP BY zname
                HAVING 总额>800 ORDER BY 总额 ASC;
三、JDBC
        JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,
                可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。
                JDBC工具类
/**
*
* @author Administrator 定义工具类,获取数据库连接 获取连接方式采用读取配置文件方式,读取的是bin目录下的
*         读取获取一次,static
*/
public class JDBCUtils {
        private static String driver;
        private static String url;
        private static String user;
        private static String password;
        private static Connection con;

        static {
                try {
                        // 读取配置
                        readConfig();
                        // 加载驱动
                        Class.forName(driver);
                        // 获取数据库连接
                        con = DriverManager.getConnection(url, user, password);
                } catch (Exception e) {
                        e.printStackTrace();
                }
        }

        private JDBCUtils() {
        }

        /**
         * 获取数据库连接
         *
         * @return Connection对象
         * @throws Exception
         */
        public static Connection getConnection() throws Exception {
                return con;
        }

        /**
         * 关闭资源
         *
         * @param con
         *            数据库连接
         * @param st
         *            执行者平台
         * @param rs
         *            结果集
         */
        public static void colse(Connection con, Statement st, ResultSet rs) {
                if (con != null) {
                        try {
                                con.close();
                        } catch (SQLException se) {
                        }
                }
                if (st != null) {
                        try {
                                st.close();
                        } catch (SQLException se) {
                        }
                }
                if (rs != null) {
                        try {
                                rs.close();
                        } catch (SQLException se) {
                        }
                }
        }

        /**
         * 关闭资源
         *
         * @param con
         *            数据库连接
         * @param st
         *            执行者平台
         */
        public static void colse(Connection con, Statement st) {
                if (con != null) {
                        try {
                                con.close();
                        } catch (SQLException se) {
                        }
                }
                if (st != null) {
                        try {
                                st.close();
                        } catch (SQLException se) {
                        }
                }
        }

        private static void readConfig() throws IOException {
                // 类加载获取配置文件的输入流
                InputStream is = JDBCUtils.class.getClassLoader().getResourceAsStream("database.properties");
                Properties pro = new Properties();
                // 读取配置文件
                pro.load(is);
                // 获取参数
                driver = pro.getProperty("driver");
                url = pro.getProperty("url");
                user = pro.getProperty("user");
                password = pro.getProperty("password");
        }

8 个回复

倒序浏览
回复 使用道具 举报

总结很不错哟~继续加油
回复 使用道具 举报


总结很不错哟~继续加油
回复 使用道具 举报
温故而知新    加油哦   继续努力
回复 使用道具 举报
保持,继续努力
回复 使用道具 举报
新年快乐~~~~·
回复 使用道具 举报
成功不是“一朝一夕”的事,需要的是“一如既往”的坚持,“一成不变”的乐观,“一门心思”的奋斗,“一鸣惊人”的能力,“一丝不苟”的态度,只有这样,2018你才能取得“一飞冲天”的骄人成绩。
回复 使用道具 举报
新年快乐    继续加油  
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马