小编Tom*_*Tom的帖子

VARCHAR(x) - 设置长度是否会在MySQL性能方面将其变为"固定长度"?

我理解CHAR和VARCHAR之间的区别,一个是固定长度,另一个是可变长度,如果一行中的所有字段都是固定长度,表通常会表现得更好.

但是,我不清楚的是,如果我给VARCHAR一个长度,例如VARCHAR(500),这会将行保留为固定长度吗?

对于上下文,我有50列的干净表,大多数是TINYINT,但我需要在这个表中有两列作为VARCHAR,因为它们每个最多需要存储500个字符.确切的长度取决于用户输入,因此未知.

作为额外的限定,我真的不想将这些VARCHAR字段放入单独的引用表中,因为它会产生不必要的连接,并且不能非常有效地符合预期的查询模式.

任何帮助,将不胜感激.谢谢.

mysql database varchar database-design char

2
推荐指数
1
解决办法
2175
查看次数

列可为空性/可选性:NULL与NOT NULL

是否有支持或反对设置某些字段为理由,NULLNOT NULL从主/外键字段在MySQL表,分开?

mysql database-design data-modeling

2
推荐指数
1
解决办法
646
查看次数

MySQL:一个表中的两个外键引用另一个表

我之前遇到过一些看起来很简单的东西,但让我再次摸不着头脑.我有一个用户表:

user_id (PK) | username| email | something
Run Code Online (Sandbox Code Playgroud)

...以及当一个用户查看另一个用户时"视图"的表格:

view_id (PK) | viewer_id | viewed_id | view_date
Run Code Online (Sandbox Code Playgroud)

"viewer_id"和"seen_id"都是user_ids,允许我分别搜索用户是查看者或正在查看的用户的实例.

我最初认为这两个列都是外键,但是我在schema.yml文件中创建了表(我使用的是Doctrine 1.2)并指定了两个独立的外部关系(每列一个),看来Doctrine只需要考虑到这两个表之间首先列出的外来关系(user_id> viewer_id).

现在让我感到困惑的是,这是正确的MySQL行为,Doctrine中的问题,还是我接近这个问题的方式有问题,或者没什么可担心的!一个表中是否有两个单独的外键映射到另一个表中的同一列?它是否合乎逻辑,因为JOIN仍然允许我通过user_id访问"视图"?我弄错了吗?

谢谢你的时间.

编辑 - 模式文件:

User:
relations:
View: {class: View, local: user_id, foreign: viewer_id, type: many, foreignType: one, alias: View, foreignAlias: User}
View: {class: View, local: user_id, foreign: viewed_id, type: many, foreignType: one, alias: View, foreignAlias: User}

... only difference is viewer_id/viewed_id
Run Code Online (Sandbox Code Playgroud)

php mysql schema doctrine foreign-keys

2
推荐指数
1
解决办法
4978
查看次数

是否可以在动作中从view.yml获取值

我想知道是否有可能在一个动作中从view.yml获取样式表的名称,理想情况下使用如下简单的东西:

sfConfig::get('......');
Run Code Online (Sandbox Code Playgroud)

我想访问view.yml中的现有声明,而不是硬编码或复制它,如app.yml.

谢谢.

action symfony1 view configuration-files

2
推荐指数
1
解决办法
843
查看次数

反向布尔评估

为什么在下面的PHP代码中反向完成布尔值评估,而不是在结尾处放置"false"?

while (false !== ($obj = readdir($dh))) {
    // do something
}
Run Code Online (Sandbox Code Playgroud)

(来自http://php.net/manual/en/function.unlink.php中的一个用户示例)

我已经看到了在其他地方编写评估的方式,但从未真正理解为什么要这样做.我从未学过计算机科学,所以这可能是一个真正的问题.

php evaluation boolean coding-style operator-precedence

2
推荐指数
1
解决办法
91
查看次数

JQuery:如何知道值的选择名称?

我需要在其值已知时获取select(#Dropdown)的名称,但似乎无法使语法正确.这是一个例子:

$(document).ready(function()
{
   var countrycode = '55';
   var name = $("#Dropdown[value=countrycode]").text();  // fails here
   if(name == 'Germany')
   {..... etc
Run Code Online (Sandbox Code Playgroud)

当我能够使用"this"时,我可以在不同的上下文中按照以下方式工作:

var name = $(this[value=countrycode]).text();
Run Code Online (Sandbox Code Playgroud)

...但是在第一个例子中没有.

任何人?谢谢.

javascript jquery select

1
推荐指数
1
解决办法
1030
查看次数

如何在表单类中将sfWidgetFormInputCheckbox默认设置为false?

我有一个带有复选框小部件的表单类:

$this->setWidgets(array(
  'status' => new sfWidgetFormInputCheckbox(array('value_attribute_value' => 1)),
  // various other widgets
));
Run Code Online (Sandbox Code Playgroud)

有没有办法将此复选框设置为从表单类中取消选中(默认情况下已选中)?我似乎无法得到任何工作.我在Google上发现了一些可能是Symfony错误的东西,但是我还是拒绝相信它.

从动作中设置它可以正常工作:

$this->form->setDefault('status', false);
Run Code Online (Sandbox Code Playgroud)

......但我不想在那里拥有它.

php forms checkbox symfony1

1
推荐指数
1
解决办法
5143
查看次数

如何动态更改FancyBox 2选项?

我有一个FancyBox 2.1.5,它使用叠加"closeClick:true",这意味着FancyBox将在任何地方点击叠加时关闭.我正在以各种方式动态更新FancyBox内容,并希望能够在某种情况下将覆盖closeClick行为更改为"false".

有没有办法以这种方式动态更新FancyBox选项?这种行为的改变不会与任何就绪事件/回调相关,而是由用户启动的.

jquery fancybox fancybox-2

1
推荐指数
1
解决办法
1516
查看次数

MySQL UPDATE WHERE IN分别为每个列出的值?

我有以下类型的SQL:

UPDATE photo AS f 
  LEFT JOIN car AS c 
         ON f.car_id=c.car_id 
  SET f.photo_status=1
    , c.photo_count=c.photo_count+1 
  WHERE f.photo_id IN ($ids)
Run Code Online (Sandbox Code Playgroud)

基本上,两个表(car&photo)是相关的.$ ids中的列表包含唯一的照片ID,例如(34,87,98,12).通过查询,我将该列表中每张照片的状态设置为表格中的"1" photo,同时car在手边的桌子中增加照片计数.

它有效,但有一个障碍:因为列表可以包含多个与同一辆汽车相关的照片ID,所以照片计数只会增加一次.如果列表中有10张照片与同一辆车相关联,则photo_count将变为1 ....而我想将其增加到10.

有没有办法通过连接单独为每张照片进行增量,而不是MySQL为我过度思考?

我希望上述内容有道理.谢谢.

mysql database join where-clause

0
推荐指数
1
解决办法
2万
查看次数

是否可以为一个路由规则分配多个URL?

我想知道是否有人知道是否可以在Symfony 1.4 + Doctrine 1.2中为一个路由规则分配多个静态URL.

我所追求的是......

my_routing_rule:
  url:    {/first-url/, /second-url/, /third-url/}
  param:  {module: mymodule, action: myaction}
Run Code Online (Sandbox Code Playgroud)

URL是静态的,:something在这种情况下我不能使用变量.

php doctrine symfony1 url-routing

0
推荐指数
1
解决办法
883
查看次数