黑马程序员技术交流社区

标题: 数据库阶段笔记 [打印本页]

作者: 杨纯纯    时间: 2018-12-10 17:20
标题: 数据库阶段笔记
JDBC (接口):


JDBC:
* 概念 :        
                        Java DAtabase connectivity    java语言操作数据库
                        JDBC 就是 定义了操作所有关系型数据库的规则(接口) 相当于统一文字。
                        接口的实现类,是每一个不同数据库的厂商写的实现类。
                        (mysql,oracle,DB2) 写的实现类名:数据库驱动。-- .jar
                        提供数据库  驱动  jar包,我们可以使用这套接口编程,真正执行的代码的是  驱动  jar 包中的实现类
                       
*入门  :       
                       
                        1.注册驱动(DriverMAnager)
                        class.forName("com.mysql.jbdc.Driver")
                        2.获取数据库的连接对象 Connection
                        3.定义sql语句并且创建执行sql的对象(Statement,PrepareStatement)
                        4.执行sql获取结果
                        5.便利结果,对结果进行操作
                        6.释放资源
                       
                JDBC 操作事务
               
                                con.setAutoCommit(false//必须)
                                con.commit();con.rollback();
                               
                               
                               
导入第三方jar包
                                在module下创建libs目录
                                拷贝jar包到该目录
                                邮件jar包 Add As Libirary
                       
详解各个对象
                        1.DriverManager: 驱动管理对象
                        *功能:
                                1.注册驱动(DriverMAnager):告诉
                               
                                  方法:Class.forName("com.mysql.jbdc.Driver")
                                   通过查看源码发现:在com.mysql.jbdc.Driver类中存在静态代码块
                                  
                                   (这里有静态代码块)
                                  
                                   注意:
                                  
                                2.获取数据库连接
                                        * 方法 static Connection getConnection(String url,String user,String password)
                                        * 参数:
                                                        *url: 制定连接的路径
                                                                *语法Connection con =DriverManager.getConnection(jdbc:mysql://ip地址:"端口号(3306)/数据库名称()","数据库账号","数据库密码")
                                                                *细节: 如果连接的是本机的MySQL服务器,并且服务默认端口是3306,则url可以简写:jdbc:mysql://
                                                        *user:用户名
                                                        *password:细节
                                 
                                 3.定义sql语句并且创建执行sql的对象(Statement,PrepareStatement)
                                                ()        stmt = con.createStatment
                                                **  con.preparedStatement("sql语句")
                       
                       
                                  4.执行sql获取结果
                                                dml(增删改)
                                                                        update
                                                dql(查询)
                                                        stmt.executrQuey
                                       
                                       
                                补充【next() 方法就是游标向下移动一行】
                                        【getXxx():获取数据】
                                                【Xxx代表数据类型】
                       
                                        *参数: int:代表列的编号 如 getString(1/“列名”)
                                       
                                        固定语法:url: jdbc:mysql://
                                        user: 用户名 root
                                        password:密码 root
                                       
                        control  alt +v
                       
                       
                       
                       
                        简化书写: JDBCUtils
                       
                        只有静态 的能被静态方法 返回connection 对象
                       
                        mysql
                        安装卸载
                        net start mysql
                         sqlyog工具可视窗口性的 工具
                         dml数据的增删改
                         dql 数据库的查询
                          create database 数据库名  character set 设置字符集 utf8
                          drop database 数据库名称
                          showDatabases
                          show create database 数据库名
                          select database() 查看当前数据库
                          use 数据库名
                         create table 表名
                         alter table 表名 add 列明 数据类型  约束
                         alter table 表名 add 列明 数据类型  约束
                       
                       
                        查询 就是消除 这些无用的数据  笛卡尔积 数据
                        隐士内链接 使用where
                       
                       
                        三种 多表查询的方式  就是为了消除无用的笛卡尔积数据
                 内链接 查询
                  隐士内链接:使用where 条件来消除无用的数据
                  select *(可更换为列明 查询具体的内容)from emp,dept where emp.dept_id=dept.id
                  显示内链接
                  select*from 表名 jion 表名 on 条件 a.b_id=b.id;
                  
                  
                 外连接查询:
                  左外连接查询:
                  select 左.*,右.name from 左表名 left join 右表名 on 条件
                  
                  右外链接查询:
                  select 左.*,右.name from 右表名 right join 右表名 on 条件
                       
                  子连接查询:
                   嵌套式查询方式 将一个sql 语句嵌套在另一个sql语句中 完成对一个精准点位的查询




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2