小编Pau*_*and的帖子

SELECT语句不使用possible_keys

我有一个遗留系统的表,没有主键.它记录了工厂发布材料的交易数据.

为简单起见,我们可以说每行包含job_number,part_number,quantity&date_issued.

我在日期发布列中添加了一个索引.当我运行EXPLAIN SELECT*FROM issued_pa​​rts WHERE date_issued>'20100101'时,它显示如下:

+----+-------------+----------------+------+-------------------+------+---------+------+---------+-------------+
| id | select_type | table          | type | possible_keys     | key  | key_len | ref  | rows    | Extra       |
+----+-------------+----------------+------+-------------------+------+---------+------+---------+-------------+
|  1 | SIMPLE      | issued_parts   | ALL  | date_issued_alloc | NULL | NULL    | NULL | 9724620 | Using where |
+----+-------------+----------------+------+-------------------+------+---------+------+---------+-------------+

所以它看到了关键,但它不使用它?有人可以解释原因吗?

mysql indexing select explain

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

SQL Server:插入下一个可用的int

我正在处理SQL Server中有一个serial_no列的表,该列被定义为非null int.它似乎不是一个自动递增字段,就好像我从插入语句中留下该列我得到一个错误,说该serial_no字段不能为空.

那么如何插入下一个可用的号码?

我试过这个:

INSERT INTO mytable (serial_no) VALUES ( (SELECT MAX(serial_no)+1 FROM mytable))
Run Code Online (Sandbox Code Playgroud)

但我得到一个错误,说子查询不能在这种情况下使用.

编辑:此表用于现成的产品,因此我无法更改设计并使serial_no列成为自动增量.

sql sql-server insert auto-increment

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

如何以编程方式启动/停止 FFMPEG 流转码

我有一个提供 MJPEG 流的 ip 网络摄像头。我可以在 OSX 下使用 ffmpeg 成功转码并保存该流。以下给了我几乎我想要的:

ffmpeg -f mjpeg -i "http://user:pass@10.0.1.200/nphMotionJpeg?Resolution=640x480&Quality=Standard" -b:v 1500k -vcodec libx264 /tmp/test.mp4
Run Code Online (Sandbox Code Playgroud)

这将启动一个 FFMPEG 会话并开始将实时流保存到我的 test.mp4 文件中。按 q 将退出 ffmpeg 并保存文件。

我想使用 PHP 或 Bash shell 脚本以编程方式开始和停止录制。我尝试了以下方法:

<?php

$pid = pcntl_fork();

if($pid == -1){
    die("could not fork"); 
}elseif($pid){
    // we are the parent...
    print $pid.' started recording. waiting 10 seconds...';
    sleep(10); // Wait 10 seconds

    print_r(shell_exec("kill ".$pid)); // Kill the child recording process

    echo 'done';
    exit(); 
}else{
    // we are the child process. …
Run Code Online (Sandbox Code Playgroud)

php macos bash webcam ffmpeg

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

iOS AdHoc App 拒绝安装在一台设备上

我有一个内部开发的应用程序,我正在使用 AdHoc 分发版进行分发。我有一个带有itms-services://?action=download-manifest链接的 Intranet 页面设置,用于在设备上安装它。

该应用程序目前已部署到 20 台 iOS 6 和 7 设备。我尝试添加 3 个运行 iOS 8 的新 iPod touch。

这是我所做的:

  1. 在 developer.apple.com 站点上添加了 3 个设备列表的 UDID
  2. 将三台设备添加到现有的分发配置文件中(有效期为另外 8 个月)
  3. 使用 xCode 组织器为企业/临时分发生成新存档(生成新的 ipa 和 plist)
  4. 尝试使用 itms-services 链接在新设备上安装该应用程序

问题

三个中的两个安装成功。第三个绝对拒绝安装。当我点击要安装的链接时,该图标会出现在跳板上,并且在其下方仅显示“正在等待...”。什么都不会发生。如果我重新启动设备,则会弹出此消息:“无法下载应用程序。此时无法下载“SAP-WM”。”

我验证了 UDID 是正确的,并且它与分发配置文件相关联(它是)。我也尝试出厂重置设备并重新开始无济于事。我还在其他 iOS 8 设备之一上成功删除并重新安装了该应用程序,以确保存档正常,并且运行良好。

这是我尝试安装后立即从设备控制台的输出(注意有关 zip 无效的错误?没有意义,它在其他两个设备上工作正常!):

Nov 24 07:53:03 iPod-touch locationd[62] <Notice>: Gesture EnabledForTopCLient: 0, EnabledInDaemonSettings: 0
Nov 24 07:53:17 iPod-touch SpringBoard[42] <Warning>: Killing paulwieland.SAP-WM for app installation
Nov 24 07:53:17 iPod-touch itunesstored[79] …
Run Code Online (Sandbox Code Playgroud)

xcode ad-hoc-distribution ios

5
推荐指数
0
解决办法
1225
查看次数

在MySQL innodb中创建具有多个字段的外键约束

我有两张桌子:发票和invoice_items.我需要两者之间的一对多关系与级联删除(所以如果发票被删除,项目也会被删除).

发票上的主键跨越两列:invoice_number,vendor_number

invoice_items上的主键跨越三列:invoice_number,vendor_number,item_number

如何使用invoice_number&vendor_number列向invoice_items表添加外键约束?

我尝试过这个并没有用:

ALTER TABLE `invoice_items`
ADD FOREIGN KEY (`invoice_number`,`vendor_number`)
REFERENCES `invoices`(`invoice_number`,`vendor_number`) ON DELETE CASCADE;

ERROR 1005 (HY000): Can't create table 'test_db.#sql-12c8_db1ad' (errno: 150)
Run Code Online (Sandbox Code Playgroud)

以下是表定义:

CREATE TABLE IF NOT EXISTS `invoices` (
  `vendor_number` varchar(20) NOT NULL,
  `invoice_number` varchar(20) NOT NULL,
  `po_number` varchar(50) NOT NULL,
  `inbound_message_id` int(11) NOT NULL,
  `created_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`vendor_number`,`invoice_number`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

CREATE TABLE IF NOT EXISTS `invoice_items` (
  `vendor_number` varchar(20) NOT NULL,
  `invoice_number` varchar(20) NOT …
Run Code Online (Sandbox Code Playgroud)

mysql sql innodb foreign-keys

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

如何将多个属性绑定连接为一个

我有一个 OData 源,它提供包含first_name& 的结果行last_name

我想在一个名为Full Name的列的表中显示这些。

我正在尝试使用 JSView(它似乎不如 XML 笨拙)。

我可以像这样进行 1:1 绑定:

var template = new sap.m.ColumnListItem({
  // ...,
  cells: [
    new sap.m.Text({
      text: "{first_name}"
    })
  ]
});
Run Code Online (Sandbox Code Playgroud)

但我无法弄清楚如何将多个字段绑定/连接到 Text 控件,或者如何将多个 Text 控件放入一个单元格中。

编辑:这与其他建议的解决方案不完全相同,因为这是针对 JSView 而不是 XMLView。

sapui5

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