我常用的工具是navicat,但是修改definer不能用工具,只能用命令行;

数据库迁移到其他服务器上,会报definer错误,修改view的definer方法如下(比如把definer改为本地的,要加上select语句):

第一种方法:

alter DEFINER = 'root'@'localhost' view BMS_HOTEL_SALES_V as select `hc`.`CHECK_DATE` AS `CHECK_DATE`,`hsm`.`START_DATE` AS `START_DATE`,`hsm`.`END_DATE` AS `END_DATE`,`hc`.`USER_CODE` AS `USER_CODE` from ((`ots`.`sms_hotel_checkbill` `hc` join `ots`.`sms_hotel_sales_mapping` `hsm` on((`hc`.`HOTEL_ID` = `hsm`.`HOTEL_ID`))) join `ots`.`sy_org_role_user` `ru` on(((`ru`.`ROLE_CODE` = ‘XSY’) and (`hc`.`USER_CODE` = `ru`.`USER_CODE`)))) where (`hc`.`USER_CODE` = `hsm`.`USER_CODE`);

以上的语句中:

  (1)'root'@'localhost'  ——>  '数据库用户名'@'主机地址'

  (2)BMS_HOTEL_SALES_V  ——>  视图名

  (3)as 后面是视图语句

第二种:
 
复制视图创建语句,直接将create改成alter,definer改成相关的,比如root@localhost  例如:
 
用alter view 修改definer的值,alter ALGORITHM=UNDEFINED DEFINER='root'@'localhost' SQL SECURITY DEFINER VIEW 'view_product' AS 视图选择语句。
 

以上的语句中:

  (1)'root'@'localhost'  ——>  '数据库用户名'@'主机地址'

  (2)'view_product'   ——>  视图名

  (3)AS 后面是视图语句

mysql中修改view的definer的更多相关文章

  1. mysql如何修改所有的definer

    mysql中的definer是什么,有什么作用? 我们在mysql创建view.trigger.function.procedure.event时都会定义一个Definer=‘xxx’,类似如下: C ...

  2. 备忘:MySQL中修改表中某列的数据类型、删除外键约束

    -- MySQL中修改表中某列的数据类型 ALTER TABLE [COLUMN] 表名 MODIFY 列名 列定义; -- 删除外键约束 SHOW CREATE TABLE 表名; -- 复制CON ...

  3. mysql中修改密码的方式

    参考地址:https://www.cnblogs.com/yang82/p/7794712.html mysql中修改用户密码的方式: 最简单的方法就是借助第三方工具Navicat for MySQL ...

  4. mysql中修改表字段名/字段长度/字段类型详解

    在mysql中我们对数据表字段的修改命令只要使用alter就可以了,下面我来给大家详细介绍mysql中修改表字段名/字段长度/字段类型等等一些方法介绍,有需要了解的朋友可参考. 先来看看常用的方法 M ...

  5. 在mysql中修改表名的sql语句

    在使用mysql时,经常遇到表名不符合规范或标准,但是表里已经有大量的数据了,如何保留数据,只更改表名呢?可以通过建一个相同的表结构的表,把原来的数据导入到新表中,但是这样视乎很麻烦.能否简单使用一个 ...

  6. 关于mysql中修改某个字段类型,以及备份表中数据到新建的表中,从新建的表中移除数据到修改过的表中

    1:修改表中某个字段的类型 alter table usertable MODIFY dddd VARCHAR(50); 其中MODIFY是指修改表中字段的属性 alter表示修改表的意思 2:备份表 ...

  7. mysql中修改字段的类型

    修改表字段的类型: ALTER TABLE 表名  MODIFY COLUMN 字段名 字段类型定义 如:将movie_mark修改为浮点型 alter table new_playing_video ...

  8. MySQL中修改多个数据表的字段拼接问题

    错误1: 异常:Truncated incorrect DOUBLE value: 'lili' 问题分析:我的修改sql语句是:update video set vname='汉字' and vdi ...

  9. 把mysql 中的字符gb2312 改为gbk的方法

    第一步:查找mysql的字符: mysql> show variables like '%char%';+--------------------------+----------------- ...

随机推荐

  1. 命令模式(Command Pattern)

    命令模式的本质是对命令进行封装,将发出命令的责任和执行命令的责任分割开.命令模式是为了解决命令的请求者和命令的实现者之间的耦合关系. 将来自客户端的请求传入一个对象,从而使你可用不同的请求对客户进行参 ...

  2. 在asp.net中显示PDF的方法:

    来源:http://www.cnblogs.com/tengs2000/archive/2009/02/23/1396646.html 一.直接显示,使用的还是原页面的URL Response.Con ...

  3. ubuntu12.10 源更新出错(sudo apt-get update)

    Ubuntu12.10 刚安装完发现vi编辑器无法正常使用,后来用sudo apt-get install vim 一直出错,搜索相关资源发现需要更新源 首先,备份一下Ubuntu 12.10 原来的 ...

  4. 集群工具ansible使用方法

    ansible简介 ansible是与puppet.saltstack类似的集群管理工具,其优点是仅需要ssh和Python即可使用,而不像puppet.saltstack那样都需要客户端.与pupp ...

  5. ruby中 Win32ole的各应用操作方法(word excel Outlook IE)

    Win32ole为标准Ruby发行版的一部分.Win32ole是访问Windows自动化的接口,可以让Ruby和Windows应用进行交互.具体说来Win32ole可以操作Word,Excel,IE, ...

  6. NC57银行档案和客商银行账号为建行04 UPDATE

    第二步 银行档案 update bd_bankdoc set bankdoccode='04N'|| bankdoccode , pk_banktype='0001ZZ1000000001OCUD' ...

  7. 黄聪:win7 QQ自动远程协助 提示关闭了远程桌面

    最近在使用QQ自动远程协助的时候,输入完远程验证密码后,提示“关闭了远程桌面” 系统环境:win7 64位 问题描述:在使用QQ自动远程协助,对方QQ提示关闭了远程桌面. 解决办法:将2台电脑的时间调 ...

  8. 【转】C#多线程Lock使用

    一.Lock定义     lock 关键字可以用来确保代码块完成运行,而不会被其他线程中断.它可以把一段代码定义为互斥段(critical section),互斥段在一个时刻内只允许一个线程进入执行, ...

  9. MVC 访问IFrame页面Session过期后跳转到登录页面

    Web端开发时,用户登录后往往会通过Session来保存用户信息,Session存放在服务器,当用户长时间不操作的时候,我们会希望服务器保存的Session过期,这个时候,因为Session中的用户信 ...

  10. SQLAlchemy query with OR/AND/like common filters

    http://www.leeladharan.com/sqlalchemy-query-with-or-and-like-common-filters Some of the most common ...