如何在mysql视图中传递动态参数 [英] how pass dynamic parameter in mysql view

查看:3168
本文介绍了如何在mysql视图中传递动态参数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经在mysql中创建了这个

I have created this in mysql

CREATE VIEW MYVIEW AS (
SELECT A.FNAME
     , A.LNAME
     , B.EMAIL
FROM EMPLOYEE A, EMPEMAIL B
WHERE A.EID = :empId
  AND A.EID = B.EID
AND B.EMAILTYP = :emailType)

现在我想使"empId"和"emailType"成为动态.我的意思是在选择时间传递值. 需要更改什么代码? 提前谢谢

now i want make " empId " and " emailType " dynamic.I mean pass the value at select time. what need to change in code?? thanx in advance

推荐答案

只需创建不带参数的视图(即仅处理联接):

Just create the view without the parameters (i.e., to take care of the join only):

CREATE VIEW MYVIEW AS (
SELECT A.FNAME
     , A.LNAME
     , B.EMAIL
     , A.EID AS EID             -- added to be used in the WHERE
     , B.EMAILTYP AS EMAILTYP   -- added to be used in the WHERE
FROM EMPLOYEE A, EMPEMAIL B
WHERE A.EID = B.EID)

并在查询时应用动态参数:

And apply the dynamic parameters when you query:

SELECT FNAME, LNAME, EMAIL
FROM   my_view
WHERE  eid = 'your_empId' AND emailtyp = 'your_emailType'

请注意上面显示的WHERE,它使用在VIEW

Note the WHERE shown above, it uses the two extra fields declared in the VIEW

这篇关于如何在mysql视图中传递动态参数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆