加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

使用php代码调用MYSQL CREATE VIEW?

发布时间:2020-12-13 17:39:28 所属栏目:PHP教程 来源:网络整理
导读:需要一些启发,这是我在这里的第一篇文章. 我想使用php调用并使用我之前创建的mysql视图…是否可能? 或换句话说, 我想知道….我们可以或者我们如何调用mysql视图,我们已经使用php创建了?减少长查询编码 标准通用代码如下: $sql= " SELECT shipping.tarrif1
需要一些启发,这是我在这里的第一篇文章.

我想使用php调用并使用我之前创建的mysql视图…是否可能?
或换句话说,
我想知道….我们可以或者我们如何调用mysql视图,我们已经使用php创建了?减少长查询编码

标准通用代码如下:

$sql= " SELECT shipping.tarrif1,city.city_name
         FROM shipping JOIN city
   ON shipping.id_city = city.id_city";
$db->QueryArray($sql);   

while ($row = $db->Row()) {
echo $row->city_name. " - " . $row->tarrif1 . "<br />n"; 
}

现在为MYSQL视图:

$sql= " CREATE VIEW shipsumarry AS SELECT shipping.tarrif1,city.city_name
         FROM shipping JOIN city
   ON shipping.id_city = city.id_city";

纯MYSQL命令:

query: SELECT * FROM shipsummary

在PHP中:

$sql = i'm badly stuck here...please help

我们如何使用php访问它.

谢谢你

增加1:

好的…让我重写一下这个例子:

$sql1= " CREATE VIEW shipsumarry AS SELECT shipping.tarrif1,city.city_name
         FROM shipping JOIN city
   ON shipping.id_city = city.id_city";
$sql2= "SELECT * FROM shipsummary";
$db->QueryArray($sql2);

$sql2看不到shipummary VIEW,因为它已经在另一个var中了

如何利用然后执行$sql1? &安培; $SQL2?

解决方法

PHP中的过程是相同的 – 客户端(PHP)将MySQL视图视为常规表,因此将其查询为

mysql_query("SELECT * FROM shipsummary");

// Or for whatever framework you're using:
$db->QueryArray("SELECT * FROM shipsummary");

应该正常工作.如果它无法正常工作,则您访问该视图的MySQL用户可能具有损坏的权限. (虽然看起来不太可能).

UPDATE

在您编辑问题后,我可以非常清楚地看到问题.

$sql1= " CREATE VIEW shipsumarry AS SELECT shipping.tarrif1,city.city_name
         FROM shipping JOIN city
   ON shipping.id_city = city.id_city";
$sql2= "SELECT * FROM shipsummary";

// Here,you need to execute $sql1 before $sql2 is useful.
$db->QueryArray($sql1);
// Now execute $sql2
$db->QueryArray($sql2);

我们不知道您正在使用什么数据库类或框架,但如果有一个类似于QueryArray()的方法不返回结果集,而只是执行一个语句,请使用它来创建视图.

现在,所有这一切……

除非每次执行此代码时视图的定义必须更改,并且除非您有理由在每次执行此脚本执行结束时再进行DROP VIEW,所以它会产生远,远,更远……简单地在数据库中创建视图,它将永远保留,而不是继续使用PHP重新创建它.视图一旦创建,就会保持创建状态.

不要将它们视为临时查询时间/代码保护程序.在数据库中创建需要ONCE的视图(使用PHPMyAdmin或mysql CLI,或者创建表),然后使用PHP访问它们.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读