数据库——(7)

来源:互联网 发布:java 汉字验证码 编辑:程序博客网 时间:2024/05/14 14:34
1.针对不同用户进行合理的用户角色权限分配,即用户管理
2.创建普通用户:create user `user`@`host` [identified by `password`]
   授权:grant priv_type on databasename.tablename
         To `user`@`host` [identified by `password`]
           [with grant option];
3.常用操作权限:create和drop权限
                insert、delete、select和update权限
                alter权限
   注意:如果授予所有权限,可用all
         为所有数据和表授权,权限范围可使用*.*
4.使用mysqladmin命令修改root账户
   mysqladmin -u username -p password "newpassword"
   注意:mysqladmin需在DOS命令行执行,回车后输入原密码
5.使用set命令修改用户密码
   set password [for `username`@`host`] = passwore("newpasswore")
    注意:只有超级管理员用户才能修改其他用户密码,如果是普通用户,可修改自己的密码
6.删除用户
   drop user `username1`@`host`[,`username2`@`host`……];

7.JDBC是Java数据库连接技术的简称,由一组使用Java语言编写的类和接口组成,可以为多种关系数据库提供统一访问
8.Driver Manager类:依据数据库的不同,管理相应的JDBC驱动
  Connection接口:负责连接数据库并担任传送数据的任务
  Statement接口:由connection产生,负责执行SQL语句
  ResultSet接口:负责保存statement执行后所产生的查询结果
9.JDBC API的主要功能:与数据库建立连接,执行SQL语句,处理结果
10.JDBC访问数据库的步骤: 
    加载驱动、与数据库建立连接、(创建Statement或PrepaerdStatement对象)、发送SQL    语句,并得到返回结果、处理返回结果、(释放资源)
11.两种常用的驱动方式:
  i.JDBC-ODBC桥连方式,适用于个人开发和测试
  ii.纯Java驱动方式:直接同数据库进行连接,推荐使用

12.使用JDBC-ODBC桥方式连接数据库
    将对JDBC API的调用,转换为对另一组数据库连接API的调用
    优点:可以访问所有ODBC可以访问的数据库
    缺点:执行效率低、功能不够强大
13.使用纯Java方式连接数据库 
   由JDBC驱动直接访问数据库
   优点:完全Java代码,快速、跨平台
   缺点:访问不同的数据库需要下载专用的JDBC驱动

14.Statement常用方法
    方法名                                            说明
  ResultSet executeQuery(String sql)        执行SQL查询并获取到Result对象
  int execuUpdate(String sql)       可以执行插入、删除、更新等操作。返回值是执行该操作所影响的行数
  boolean execute(String sql)       可以执行任意SQL语句,然后获得一个布尔值,表示是否返回ResultSet
15.ResultSet常用方法
    方法名                                             说明
  boolean next()                     将游标从当前位置向下移动一行
  boolean previous()                 将游标从当前位置向上移动一行
  void close()                       关闭Result对象
  int getInt(int collndex)           以int形式获取结果集当前行指定列号值
  int getInt(String colLabel)        以int形式获取结果集当前行指定列名值
  float getFloat(int collndex)       以Float形式获取结果集当前行指定列号值
  float getFloat(String colLabel)    以Float形式获取结果集当前行指定列名值
  String getString(int collndex)     以String形式获取结果集当前行指定列号值
  String getString(String colLabel)  以String形式获取结果集当前行指定列名值


16.如何避免SQL注入的隐患
   使用preparedStatement接口
       继承自Statement接口
       比Statement对象使用起来更加灵活,更有效率
   优点:提高代码的可读性和可维护性
         提高了SQL语句执行的性能
         提高了安全性