DCL语句
我们现在默认使用的都是root用户,超级管理员,拥有全部的权限。但是,一个公司里面的数据库服务器上面可能同时运行着很多个项目的数据库。所以,我们应该可以根据不同的项目建立不同的用户,分配不同的权限来管理和维护数据库。
1.创建用户
create user '用户名' @ '主机名' identifide by '密码';
2.授权用户
create 权限1,权限2 on 数据库名.表名 to '用户名'@'主机名';
3.修改管理员密码
mysqladmin -uroot -p password 新密码 (不需要加引号)
4.修改普通用户密码
set password for '用户名'@'主机名'= password('新密码');
注意:需要在登陆MySQL的情况下操作。
jdbc的概念
客户端操作mysql数据库的方式.
1.什么是jdbc
java数据库连接技术.JDBC是官方制定的操作数据库规范(接口),是由一组接口组成的,接口的实现是由数据库厂商实现。
作用:用来操作数据库,对数据执行增删改查操作
JDBC的好处:
代码不依赖任何的数据库
只要修改少量的代码就可以访问其它类型的数据库。
2.jdbc常用API:
Driver:接口,驱动接口 注册驱动
Connection:接口 连接对象 用来与数据库建立连接
Statement:接口 SQL语句发送对象 用来将SQL语句发送给数据库执行并获得执行结果
ResultSet:接口 结果集对象 用来封装满足查询条件的记录
DriverManager:类 工具类 用来注册和管理驱动 用来获得连接对象
3.jdbc获取连接步骤
(1).导入驱动Jar包
(2).注册驱动
(3).获取连接
4.注册驱动
注册驱动的方法:
Class.forName("com.mysql.jdbc.Driver");
获取连接的方法:
Connection con =
DriverManager.getConnection(jdbc:mysql:///要操作的表, 用户名, 密码);

4.JDBC之执行增删改操作:
Statement对象介绍
作用
SQL发送对象
将SQL语句发送给数据库执行并获得执行结果。
5.如何获取statement对象
通过调用连接对象的方法获取:
Statement sta = con.createStatement();
sta.executeUpdate();更新或者修改
sta. executeQuery();查询
6. ResultSet对象的介绍
结果集对象:用来封装满足查询条件的记录
(2).如何获得ResultSet对象
通过Statement对象的方法获取
ResultSet rls = sta.executeQuery();
方法: boolean next();将指针下移一行并判断当前指针指向的位置是否有记录,有则返回true,否则返回false
* Xxx getXxx(列号/列名)
用法:使用while循环获取;
7.jdbc工具类实现
工具类写法
JDBC工具类
*/
public class JDBCUtil {

private static final String DRIVER_CLASS = "com.mysql.jdbc.Driver";
private static final String URL = "jdbc:mysql:///需要操作的表";
private static final String USER = "账户名";
private static final String PASSWORD = "密码";

static {
try {
// 注册驱动
Class.forName(DRIVER_CLASS);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}

// 返回连接对象
public static Connection getConnection(){
try {
return DriverManager.getConnection(URL, USER, PASSWORD);
} catch (SQLException e) {
// 将编译时异常转换为运行时异常
throw new RuntimeException("没有获取到连接对象,连接失败....");
}
}

// 关闭资源
public static void close(Statement stmt,Connection conn){
close(null, stmt, conn);
}

// 关闭资源
public static void close(ResultSet rs, Statement stmt, Connection conn){
try {
// 关闭资源
if (rs != null)
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}

try {
// 关闭资源
if (stmt != null)
stmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
try {
if (conn != null)
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
---------------------------------------------

关闭资源的注意事项
* 开启顺序:Connection --> Statement --> ResultSet
* 关闭顺序:ResultSet --> Statement --> Connection

DCL语句的更多相关文章

  1. 《oracle每天一练》触发器不能调用或间接调用COMMIT,ROLLBACK等DCL语句

    触发器不能调用或间接调用COMMIT,ROLLBACK等DCL语句 在触发器中不能运行 ddl语句和commit,rollback语句 ddl语句:DDL语句用语定义和管理数据库中的对象,如Creat ...

  2. Mysql---DML 语句与DCL语句

    DML 语句: DML 操作是指对数据库中表记录的操作,主要包括表记录的插入(insert).更新(update).删除(delete)和查(select),是开发人员日常使用最频繁的操作.下面将依次 ...

  3. 详解MySQL第三篇—DCL语句

    DCL(Data Control Language)语句:数据控制语句,用于控制不同数据段直接的许可和访问级别的语句.这些语句定义了数据库.表.字段.用户的访问权限和安全级别.主要的语句关键字包括 g ...

  4. mysql DCl语句

    DCl 语句主要书DBA用来管理系统中的对象权限使用 grant select,insert on sakila.* 'kingle'@'localhost' identified by '123'; ...

  5. MySQL基础:DCL语句总结

    SQL语言大致分为DCL.DDL.DML三种,本文主要介绍MySQL 5.7版本DCL语句. 概述 DCL(Data Control Language)语句:数据控制语句,用于控制不同数据段直接的许可 ...

  6. DDL DML DCL语句

    总体解释:DML(data manipulation language):自动提交的数据库操作语言       它们是SELECT.UPDATE.INSERT.DELETE,就象它的名字一样 DDL( ...

  7. 详解MySQL---DDL语句、DML语句与DCL语句

    背景:近几年,开源数据库逐渐流行起来.由于具有免费使用.配置简单.稳定性好.性能优良等优点,开源数据库在中低端应用上占据了很大的市场份额,而 MySQL 正是开源数据库中的杰出代表.MySQL 数据库 ...

  8. MySQL的DDL语句、DML语句与DCL语句

    背景:近几年,开源数据库逐渐流行起来.由于具有免费使用.配置简单.稳定性好.性能优良等优点,开源数据库在中低端应用上占据了很大的市场份额,而 MySQL 正是开源数据库中的杰出代表.MySQL 数据库 ...

  9. oracle PL/SQL管理命令语句

    一.ORACLE的启动和关闭 1.在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a.启动ORACLE系统 oracle>svrmgrl ...

随机推荐

  1. mysql5.7指定字符集

    在这个配置下面加上下面这行就可以 [mysqld] character_set_server=utf8 重启后: mysql> show variables like 'char%';+---- ...

  2. 分享一个 pycharm 专业版的永久使用方法

    刚开始接触Python,首先要解决的就是Python开发环境的搭建. 目前比较好用的Python开发工具是PyCharm,他有社区办和专业版两个版本,但是社区版支持有限,我们既然想好好学python, ...

  3. ubuntu上vritualbox为系统分配硬盘空间

    VBoxManage是virtualbox 在ubuntu上提供的管理virtualbox的命令行命令 VBoxManage modifyhd windowsDevEnv --resize VBoxM ...

  4. TensorFlow2.0(1):基本数据结构—张量

    1 引言 TensorFlow2.0版本已经发布,虽然不是正式版,但预览版都发布了,正式版还会远吗?相比于1.X,2.0版的TensorFlow修改的不是一点半点,这些修改极大的弥补了1.X版本的反人 ...

  5. jqGrid 日期格式化,只显示日期,去掉小时分

    {name:'operateTime',index:'operateTime', formatter:"date", formatoptions: {newformat:'Y-m- ...

  6. Winform组合ComboBox和TreeView实现ComboTree

    最近做Winform项目需要用到类似ComboBox的TreeView控件. 虽然各种第三方控件很多,但是存在各种版本不兼容问题.所以自己写了个简单的ComboTreeView控件. 下图是实现效果: ...

  7. 【linux】【gitlab】gitlab安装、备份、恢复、升级、内存消耗问题

    前言 GitLab:GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务.功能:Gitlab 是一个提供代码托管.提交审核和问题跟踪的代码管理平 ...

  8. O(1)纬度减少循环次数

    O(1)纬度减少循环次数 平事看淡,不服就干.老子有句粗口话不知道当不当讲,我们公司上一次发工资时4月4号,时至今日5-30已经有57天没有发工资了,我还要继续坚持下去吗?难不成现在大家工作都TM的不 ...

  9. Python学习笔记整理总结【Memcache & Redis(基础+主从架构)】

    一.Memcached1.简介Memcached 是一个高性能的分布式内存对象缓存系统,一般的使用目的是,通过缓存数据库查询结果,减少数据库访问次数,以提高动态Web应用的速度.提高可扩展性.用来存储 ...

  10. ORM组件LogORM使用指北

    LogORM是一个对数据库进行对象关系映射的ORM组件.当对数据库进行增删改操作时,组件会自动进行日志记录. 该组件支持.Net平台和.NetCore平台,支持SQL Server.Oracle.My ...