Tag: MySQL

MySQL“:: 1”主机名是指什么?

在新安装的(Windows版本)MySQL 5.5.9 SELECT user, host FROM mysql.user 得到: user host root localhost root 127.0.0.1 root ::1 localhost 但是,什么IP /主机名::1站在这里?

MySQL – 从表的id字段中select一个没有对应项的数字列表

我有一个数字列表,说{2,4,5,6,7}我有一个表,foos,与foos.ID,包括说,{1,2,3,4,8,9} 我喜欢拿我的数字列表,并find没有在我的表的ID字段中的对手。 实现这一点的一种方法是创build一个表格栏,在ID字段中加载{2,4,5,6,7}。 那么,我会做的 SELECT bars。* FROM bars LEFT JOIN foos ON bars.ID = foos.ID WHERE foos.ID IS NULL 不过,我想完成这个无临时表。 任何人有任何关于如何发生的投入?

PHP PDO和MySQLi

我刚刚在PHP中完成了一个介绍课程,并且在整个stackoverflow论坛上,人们都build议我切换到PDO,准备好语句或MYSQLi,我简要地检查了一下手册,但是大部分内容都在我的头上。 我一直在使用mysql_ *函数,所以这些概念对我来说是新的。 我认为他们是用来访问和执行数据库的具体行动,但我不知道。 那么PDO,准备好的语句和MySQLi之间有什么区别,它们是完成相同任务的不同function呢? 它们在脚本中是兼容的还是“select其中一个”? 最后哪个提供了最好的性能? 更新:感谢您的答案,我会寻找更多的PDO教程。 作为参考,我还发现以下职位有用: 哪一个是快速和轻 – mysqli或PDO mysqli或PDO – 有什么优点和缺点?

什么是PHP会话IDstring的长度?

我正在MySQL数据库中创build一个表来保存一些会话数据,包括session_id 。 什么应该是存储session_idstring的VARCHAR的长度?

Laravel $ q-> where()之间的date

我正在试图让我的cron只接收将在未来7天内重复/续订的Projects ,发送提醒电子邮件。 我刚刚发现我的逻辑不起作用。 我目前有这个查询: $projects = Project::where(function($q){ $q->where('recur_at', '>', date("Ymd H:i:s", time() – 604800)); $q->where('status', '<', 5); $q->where('recur_cancelled', '=', 0); }); 不过,我意识到我需要做的是这样的: Psudo SQL: SELECT * FROM projects WHERE recur_at > recur_at – '7 days' AND /* Other status + recurr_cancelled stuff) */ 我怎样才能在Laravel 4中做到这一点,并使用DATETIME数据types,我只使用时间戳做这种事情。 更新: 在使用下面的代码之后,使用Stackoverflow来解决这个问题,当你可以拖动代码并且在上下文之外查看的时候,Stackoverflow也是有帮助的。 $projects = Project::where(function($q){ $q->where(DB::raw('recur_at BETWEEN DATE_SUB(NOW(), INTERVAL 7 […]

devise用户angular色和权限系统的最佳实践?

我需要将用户angular色和权限系统添加到使用PHP / MySQL构build的Web应用程序中。 我想要有这个function: 一个root用户可以创build子根,组,规则和普通用户(所有权限)。 子基础只能为他/她自己的组创build规则,权限和用户(无组)。 用户可以通过组根据分配给他的权限访问由他或他的组创build的内容。 我需要系统足够灵活,以便将新angular色和权限分配给内容。 我有一个users表存储组密钥连同其他信息。 目前,我在每个内容表中使用了两个CreatedByGroup ,即CreatedByGroup和CreatedByGroup ,并使用它作为特定用户是否具有权限的点。 但它不够灵活,因为对于每一个新的内容,我都必须通过所有的数据更新和许可更新。 请通过讨论架构devise的最佳实践来帮助我。

INSERT INTO与子查询MySQL

我有这个声明: INSERT INTO qa_costpriceslog (item_code, invoice_code, item_costprice) VALUES (1, 2, (SELECT item_costprice FROM qa_items WHERE item_code = 1)); 我试图插入一个值复制相同的数据item_costprice,但显示我的错误: Error Code: 1136. Column count doesn't match value count at row 1 我如何解决这个问题?

使用轨道活动logging上的ruby插入多个logging

有没有办法插入多个logging,而不是一次一个? 我有一个非常非常丑耙的任务是做以下… VoteRecord.create(:prospect_id => prospect.id, :state => "OH", :election_type => "PR", :election => "2000-03-07", :party => row[45], :participate => participated(row[45])) VoteRecord.create(:prospect_id => prospect.id, :state => "OH", :election_type => "GE", :election => "2000-11-07", :party => row[46], :participate => participated(row[46])) VoteRecord.create(:prospect_id => prospect.id, :state => "OH", :election_type => "SP", :election => "2000-05-08", :party => row[47], :participate => […]

PDO将所有组键 – 值对提取到关联数组中

我偶尔会遇到类似于以下情况的查询: SELECT `key`, `value` FROM `settings`; 在这种情况下,我想获得一个关联数组,使用key & value作为数组的相应条目,例如,如果数据库包含:( ('first_name', 'Tom'), ('last_name', 'Jeferson') ,数组应该是array('first_name' => 'Tom', 'last_name' => 'Jeferson'); 。 最常见的方法是: $settings_flat = $db ->query("SELECT `name`, `value` FROM `settings`;") ->fetchAll(PDO::FETCH_ASSOC); $settings = array(); foreach ($settings_flat as $setting) { $settings[$setting['name']] = $setting['value']; } *另一种方法是通过调用fetchAll(PDO::FETCH_COLUMN)两次然后使用array_combine来创build数组。 但是,由于涉及两个数据库的调用,所以我忽略了这个选项。 有没有另外一种方法来做到这一点?

如何撤消mysql查询?

我怎样才能撤消最近执行的MySQL查询?