问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

yii操作数据库时若数据库的字段名是数据库的关键字怎么解决

发布网友 发布时间:2022-04-29 08:16

我来回答

3个回答

懂视网 时间:2022-04-29 12:38

一、执行原生太SQL的PDO方式

代码如下:

$sql = "";//原生态sql语句 
xx::model()->dbConnection->createCommand($sql)->execute();

二、Active Record方式

(1)New 方式

代码如下:

$post=new Post; 
$post->title='sample post'; 
$post->content='post body content'; 
$post->save();

(相关教程推荐:yii框架)

(2)Criteria方式

也可以使用 $condition 指定更复杂的查询条件。 不使用字符串,我们可以让 $condition 成为一个 CDbCriteria 的实例,它允许我们指定不限于 WHERE 的条件。

代码如下:

$criteria=new CDbCriteria; 
$criteria->select='title'; // 只选择 'title' 列 
$criteria->condition='postID=:postID'; 
$criteria->params=array(':postID'=>10); 
$post=Post::model()->find($criteria);

一种替代 CDbCriteria 的方法是给 find 方法传递一个数组。 数组的键和值各自对应标准(criterion)的属性名和值,上面的例子可以重写为如下:

$post=Post::model()->find(array( 
 'select'=>'title', 
 'condition'=>'postID=:postID', 
 'params'=>array(':postID'=>10), 
));

当一个查询条件是关于按指定的值匹配几个列时,我们可以使用 findByAttributes()。我们使 $attributes 参数是一个以列名做索引的值的数组。

在一些框架中,此任务可以通过调用类似 findByNameAndTitle 的方法实现。虽然此方法看起来很诱人,但它常常引起混淆、冲突和比如列名大小写敏感的问题。

三、Query Builder 方式

代码如下:

$user = Yii::app()->db->createCommand() 
 ->select('id, username, profile') 
 ->from('tbl_user u') 
 ->join('tbl_profile p', 'u.id=p.user_id') 
 ->where('id=:id', array(':id'=>$id)) 
 ->queryRow();

想学习更多编程相关内容,请关注Gxlcms编程教程栏目!

热心网友 时间:2022-04-29 09:46

给关键字加上 `关键字` ,就好了
一、执行原生太SQL的PDO方式。

复制代码代码如下:
$sql = "";//原生态sql语句
xx::model()->dbConnection->createCommand($sql)->execute();

二、Active Record方式
(1)New 方式

复制代码代码如下:
$post=new Post;
$post->title='sample post';
$post->content='post body content';
$post->save();

(2)Criteria方式
也可以使用 $condition 指定更复杂的查询条件。 不使用字符串,我们可以让 $condition 成为一个 CDbCriteria 的实例,它允许我们指定不限于 WHERE 的条件。

复制代码代码如下:
$criteria=new CDbCriteria;
$criteria->select='title'; // 只选择 'title' 列
$criteria->condition='postID=:postID';
$criteria->params=array(':postID'=>10);
$post=Post::model()->find($criteria);

一种替代 CDbCriteria 的方法是给 find 方法传递一个数组。 数组的键和值各自对应标准(criterion)的属性名和值,上面的例子可以重写为如下:

复制代码代码如下:
$post=Post::model()->find(array(
'select'=>'title',
'condition'=>'postID=:postID',
'params'=>array(':postID'=>10),
));

当一个查询条件是关于按指定的值匹配几个列时,我们可以使用 findByAttributes()。我们使 $attributes 参数是一个以列名做索引的值的数组。在一些框架中,此任务可以通过调用类似 findByNameAndTitle 的方法实现。虽然此方法看起来很诱人,但它常常引起混淆、冲突和比如列名大小写敏感的问题。
三、Query Builder 方式

复制代码代码如下:
$user = Yii::app()->db->createCommand()
->select('id, username, profile')
->from('tbl_user u')
->join('tbl_profile p', 'u.id=p.user_id')
->where('id=:id', array(':id'=>$id))
->queryRow();

热心网友 时间:2022-04-29 11:04

一、执行原生太SQL的PDO方式。

复制代码代码如下:
$sql = "";//原生态sql语句
xx::model()->dbConnection->createCommand($sql)->execute();

二、Active Record方式
(1)New 方式

复制代码代码如下:
$post=new Post;
$post->title='sample post';
$post->content='post body content';
$post->save();

(2)Criteria方式
也可以使用 $condition 指定更复杂的查询条件。 不使用字符串,我们可以让 $condition 成为一个 CDbCriteria 的实例,它允许我们指定不限于 WHERE 的条件。

复制代码代码如下:
$criteria=new CDbCriteria;
$criteria->select='title'; // 只选择 'title' 列
$criteria->condition='postID=:postID';
$criteria->params=array(':postID'=>10);
$post=Post::model()->find($criteria);

一种替代 CDbCriteria 的方法是给 find 方法传递一个数组。 数组的键和值各自对应标准(criterion)的属性名和值,上面的例子可以重写为如下:

复制代码代码如下:
$post=Post::model()->find(array(
'select'=>'title',
'condition'=>'postID=:postID',
'params'=>array(':postID'=>10),
));

当一个查询条件是关于按指定的值匹配几个列时,我们可以使用 findByAttributes()。我们使 $attributes 参数是一个以列名做索引的值的数组。在一些框架中,此任务可以通过调用类似 findByNameAndTitle 的方法实现。虽然此方法看起来很诱人,但它常常引起混淆、冲突和比如列名大小写敏感的问题。
三、Query Builder 方式

复制代码代码如下:
$user = Yii::app()->db->createCommand()
->select('id, username, profile')
->from('tbl_user u')
->join('tbl_profile p', 'u.id=p.user_id')
->where('id=:id', array(':id'=>$id))
->queryRow();
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
我想问扣扣邮箱在哪里 求几道奥数题的答案(算数的)要简便得算哈 能不能给我六十道五年级奥数题.要答案 六十道五年级奥数题? 比亚迪和哪国合资的车 入党政审有什么步骤? 请问邮箱在哪里我怎么找不到 夫妻相克表太准了 夫妻相克会离婚吗? 夫妻相克表太准了夫妻五行相克化解方法 无法登录学信网怎么办? 小米怎么开分屏小窗口游戏 科目一考试,湿滑路面制动过程中,发现车辆偏离方向,以下做法正确的是,不要踩制动踏板, 机动车高速行驶中出现转向失控时,驾驶人要如何处置? 为什么手机登陆qq密码对,验证码也对,都是还是就返回登陆qq的首页了登不上去。帮帮忙嘛 车辆发生侧滑时应立即松抬制动踏板同时向侧滑的一方转动转向盘?为什么要像策划一方转动而不是反方向 车辆发生侧滑为什么要松抬制动踏板 苹果能查到秒表记录吗 唐代三绝是指 我用手机qq登录时我的密码明明对了,为什么他提示密码错误 车辆如果发生侧滑现象,应该如何应对最为有效呢? 车辆侧滑应对要领 汽车侧滑怎样处理 为什么因转向或者擦撞引起的侧滑,不可以使用行车制动,行车制动具体指什么 车辆发生侧滑时要沉着冷静立即踩油门和制动 车辆因转向或擦撞引起的侧滑,不可使用行车制动. 车辆因转向或擦撞引起的侧滑,为什么不能使用行车制动?这时司机应该怎么办? QQ号被别人盗了,而且好友全删了,密码也改了怎么找回来? 三绝指的是哪三位诗人? 车辆侧滑如何处理 车辆因转向或擦撞引起的侧滑,为什么使用型车制动?简洁明了些。谢谢 华为怎么解除延时拍照使用 最近笑果公司招人吗?有啥要求吗? 四级学校没有名额了怎么办? 英语四级报名出现名额暂满但自己还想报名应该怎么办? 四级报名名额显示满了,但是很想去考,是不是就没有办法了? 薇薇新娘是一家全国连锁的摄影机构吗? 保定市薇薇新娘婚纱摄影有限公司怎么样? 四级报名名额显示满了但是很想去考是不是就没有办法了? 英语四级没有名额了,可怎么办? 薇薇新娘的来历?什么是薇薇新娘? 四级名额满了怎么解决 苍南县龙港薇薇新娘摄影有限公司怎么样? 怎么知道四级名额满了 开县薇薇新娘简介 本校四级报名名额满了 怎样在其他学校挥或者校外报名? 薇薇新娘婚纱摄影怎么样? 四级一直报不上怎么办? 2022年盐城师范学院四级英语报名考试名额满了怎么办 秦皇岛市薇薇新娘婚纱摄影有限公司怎么样? 四级名额满怎么举报