草庐IT

el-table-column

全部标签

php - table_exists() 方法可能无法正常工作

我开始使用codeigniter2.1.0编写一个简单的模型类。我现在想让它做的就是创建和删除它代表的MySQL表。这是代码:db->table_exists('users')==FALSE){$query="CREATETABLEusers(idSERIALPRIMARYKEY,emailVARCHAR(52)NOTNULLcheck(email''),UNIQUE(email))ENGINE=InnoDB;";$this->db->query($query);}}publicfunctiondeleteTable(){if($this->db->table_exists('user

php - 使用 Zend_Db_Table_Abstract 限制查询返回列

如何在使用Zend_Db_Table_Abstract时限制对特定列的查询?(下面的getDbTable()返回一个Zend_Db_Table_Abstract对象)$resultSet=$this->getDbTable()->fetchAll($this->getDbTable()->select()->where('forgienKey=\''.$forgienKey.'\'')->order("'id'ASC"));我只需要返回id列,但会返回整行。感谢您的帮助! 最佳答案 如thedocs中所述:$select=$tabl

mysql - 一张 table vs 多张 table

我有下表:-职位-文件-事件-文件每个帖子、文件、事件、文档都可以有评论。什么是更好的数据库方案,为什么?第一个解决方案评论表(comment_id,author_id,comment)创建关系的4个表(posts_comments(post_id,comment_id),files_comments(file_id,comment_id),events_comments(event_id,comment_id),documents_comments(document_id,comment_id))第二种方案评论表(comment_id,author_id,comment)items_

php - 登录脚本 - 计算行数或使用 COUNT ('column' )

我一直在使用各种在线教程涉足登录脚本(PHP和MySQL)。今天我很好奇哪种方法最好检查用户名和密码是否有效。到目前为止我读过的每个教程都会检查返回的行数,如下所示:SELECTstuffFROMusersWHEREusername=input_usernameANDpassword=input_passwordcounttherowsreturnedifrowsequaltooneloginelsedisplayerrormessage我只是在想使用COUNT并检查该值是否同样可行,如下所示:SELECTCOUNT(stuff)FROMusersWHEREusername=input

mysql - 如果 table1 具有值 X,则 SQL 更新 table2?

IFEXISTS(SELECT*FROMtable1WHEREgroup_id='8')UPDATEtable2SET(...)WHEREusertype='numbereight'我做错了什么?我需要根据group_id更新用户类型 最佳答案 你可以试试这样的:UPDATEtable2SET(...)WHEREusertype='numbereight'ANDEXIST(SELECT*FROMtable1WHEREgroup_id='8'); 关于mysql-如果table1具有值X,

php - 从 mysql 查询创建数组。 Column2 作为键 Column 1 作为值

我有一个包含的表column1=statecolumn2=linkAlabamaauburn.alabama.comAlabamabham.alabama.comAlabamadothan.alabama.com我需要从我的数据库表中获取并放入一个我可以通过array_walk()遍历的数组。他们需要像这个数组一样访问。$arraytable=array("auburn.alabama.com"=>"Alabama","bham.alabama.com"=>"Alabama","dothan.alabama.com"=>"Alabama",);我已经尝试了所有方法,但不确定如何使用ph

mysql - 统计table2的行不包括mysql中table1的所有行

我有表1,它表示具有列ItemID和列ItemInfo的项目。然后,我有表2,它表示具有列ItemID(父级)、列SubItemID和列SubItemInfo的子项。我正在尝试通过以下方式获取每个项目的所有子项目的数量:selectitems.itemID,count(*)ascountfromitems,subItemswheresubItems.itemID=items.itemIDgroupbyitemID除了没有子项目的项目外,它工作正常。不是返回子项计数为0的项行,而是该行根本不存在。是否有一种有效的方法来强制选择第一个表(项目)中的所有行? 最佳

mysql - 哪个更快 : COUNT(DISTINCT Column) vs. COUNT(*) ... GROUP BY Column

很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visitthehelpcenter.关闭9年前。我正在使用MySQL,并且我多次读到COUNT(*)通常比COUNT(Column)快。但是,我需要获取COUNT的distinct行。据我了解,我可以通过两种不同的方式做到这一点:a)选择计数(不同列)...或b)SELECTCOUNT(*)...GROUPBYColumn一般来说,哪个更快?如果它依赖,那么它依赖什么?

mysql - 通过 SHOW TABLE STAUS 查询选择特定列

我必须通过SHOWTABLESTATUS查询选择特定的列。现在看起来像:SHOWTABLESTATUSIN`myTableName`WHERE`NAME`LIKE'%name_substring%';...并返回所有列。有什么方法可以达到这个目标吗? 最佳答案 您可以查询information_schema.TABLES以获得特定的列。查看演示:http://sqlfiddle.com/#!2/38506/3SELECT*FROMinformation_schema.TABLESWHERETABLE_NAME='myTableNam

mysql - 无法创建表 '<table name>'(错误号 : 22)

我得到以下信息:Can'tcreatetable'tempabcd'(errno:22)此错误发生在以下查询(简化的)运行数千次之后DROPTABLEIFEXISTStempabcd;CREATETEMPORARYTABLEtempabcd(idint(11)NOTNULL,PRIMARYKEY(id))ENGINE=MyISAM;INSERTINTOtempabcdVALUES('1'),('2'),('3');SelectidfromtempabcdUnionSelectidfromothertableDROPTABLEIFEXISTStempabcd;查询一开始运行良好,但由于某