小编Fra*_*k V的帖子

在临时表上创建主键 - 何时?

我有一个使用大量数据的存储过程.我将数据插入到临时表中.事件的总体流程是这样的

CREATE #TempTable (
    Col1    NUMERIC(18,0) NOT NULL,    --This will not be an identity column.
    ,Col2   INT NOT NULL,
    ,Col3   BIGINT,

    ,Col4   VARCHAR(25) NOT NULL,
    --Etc...

    --
    --Create primary key here?
)


INSERT INTO #TempTable
SELECT ...
FROM MyTable
WHERE ...

INSERT INTO #TempTable
SELECT ...
FROM MyTable2
WHERE ...

--
-- ...or create primary key here?
Run Code Online (Sandbox Code Playgroud)

我的问题是什么时候是在#TempTable表上创建主键的最佳时机?我推断在插入所有数据后我应该创建主键约束/索引,因为索引需要在创建主键信息时重新组织.但我意识到我强调的假设可能是错误的......

如果它是相关的,我使用的数据类型是真实的.在#TempTable表中,Col1Col4会弥补我的主键.

更新:就我而言,我正在复制源表的主键.我知道构成我的主键的字段将始终是唯一的.如果我在最后添加主键,我不关心失败的alter table.

虽然,除此之外,我的问题仍然存在,假设两者都会成功,这个问题会更快吗?

PS如果这是重复,我很抱歉.它可能是基本的,但我找不到类似的东西.

sql-server indexing temp-tables primary-key

24
推荐指数
2
解决办法
8万
查看次数

有没有为人类设计的Python XML解析器?

我喜欢Python,但我不想仅仅为了从元素中获取属性而编写10行.也许这只是我,但minidom不是那样mini.为了使用它解析一些东西,我必须编写的代码看起来很像Java代码.

还有更多的东西user-friendly吗?有重载运算符的东西,它将元素映射到对象?

我希望能够访问:


<root>
<node value="30">text</node>
</root>
Run Code Online (Sandbox Code Playgroud)

像这样的事情:


obj = parse(xml_string)
print obj.node.value
Run Code Online (Sandbox Code Playgroud)

并没有使用getChildren或其他类似的方法.

python xml user-friendly

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

为Apple Mac OS X配置Mercurial - FileMerge

如何配置Apple的FileMerge程序以充当Mercurial的合并工具?我在我的主目录中设置了.hgrc文件,我只想将FileMerge配置为合并程序.

macos configuration mercurial filemerge

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

预期使用内置于CodeIgniter的单元测试

在大多数框架单元测试实现中,您有一组测试,并且您可以从单个[console]命令执行这些测试.测试运行并给出结果.结果有所不同,但通常包括通过/失败.

CodeIgniter的单元测试框架看起来不同,我注意到了大量的随机附加项目,以增强或替换CodeIgniter单元测试框架.

我的问题是:CodeIgniter内置的单元测试框架的预期工作流程或用途是什么?

我看了文件 ; 我知道了.这是一个简单的课程.但是哪个人利用这个课程呢?

例如,所有测试都进入一个"测试"控制器吗?或者测试是否混合到每个控制器?然后是模型和自定义助手的问题......另外,我假设测试是通过浏览器(或类似的)请求运行的...

谢谢你的指导!

问候,
弗兰克

unit-testing codeigniter

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

一个XIB内的多个视图 - iPhone SDK

我一直在花时间学习如何使用iPhone SDK.我从头到尾阅读了" 开始iPhone开发:探索iPhone SDK ",我从未在一个XIB中看到多个视图的示例.

为了说明我的意思,这里是一个XIB的屏幕截图,其中包含我所指的简单配置:

alt text http://theopensourceu.com/wp-content/uploads/2009/04/one-xib-multiple-views.png

我认为必须有一个非常具体的原因,我从来没有见过这个.在Apple的示例和我迄今为止的所有读数中,多个XIB仅使用一个"视图"(有时是导航控制器或标签栏控制器等).这是什么原因?我应该避免XIB内的多个视图吗?这两种方法有哪些优点或缺点?

先感谢您

iphone xib

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

使用Cygwin编译C程序; 执行错误

我注册了硕士计算机科学课程.该课程使用C,如果我们使用Windows ,教师希望我们使用Cygwin编译程序.

我已经下载并安装了Cygwin,并确保我已经安装了GCC编译器.

但我不知道从哪里开始.我需要编译一个具有基本include的源文件.

#include <stdio.h> 
Run Code Online (Sandbox Code Playgroud)

让我们假设文件在我的桌面上(它不是,但为了参数).如何从bash shell导航到桌面?我假设一旦我在bash中导航到正确的位置,我只需执行:

gcc myProgram.c -o myProgram
Run Code Online (Sandbox Code Playgroud)

更新:按照下面发布的不同说明,我能够编译程序; 我为此感谢你.但是当我执行生成的二进制文件时,我得到以下内容.如何编译或执行此程序,以便我没有收到错误?再次谢谢你.

This application has failed to start because cygwin1.dll was not found. Re-installing the application may fix this problem.

c gcc cygwin

15
推荐指数
3
解决办法
12万
查看次数

如何正确关闭Derby内存数据库

我正在使用derby作为嵌入式数据库.此外,我正在使用它的内存数据库选项进行单元测试.

我无法弄清楚的是如何正确关闭(快速查看代码) Derby数据库.我相信我让它适用于标准数据库但我在内存数据库中尝试类似代码时会遇到不同的异常.

我将省略细节,如果需要其他感觉,我会添加它们.

基本上,我试图在这两种方式中关闭我的数据库,我的内存数据库一直被称为"呃":

DriverManager.getConnection("jdbc:derby:memory:eh;shutdown=true");
Run Code Online (Sandbox Code Playgroud)

然后:

DriverManager.getConnection("jdbc:derby:eh;shutdown=true");
Run Code Online (Sandbox Code Playgroud)

前者导致异常但不是预期的异常.细节是:

java.sql.SQLNonTransientConnectionException:数据库'内存:呃'关闭.

后者导致

java.sql.SQLException:找不到数据库'呃'.

根据我能够弄清楚的,我们想要一个SQLException但不是我们收到的那个.另一方面,SQLNonTransientConnectionException错误似乎更合适,但不是正确的类型(虽然它是派生的SQLException),也没有正确的状态代码.州代码最终是:08006.

我的示例代码说明了SQLException一个SQL状态为"XJ015"的代码.

注意:我引用的示例是:WwdEmbedded Program(Java Code).

java shutdown derby in-memory-database

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

是否可以在没有Cygwin或MinGW的情况下使用GCC?

GCC是一个备受推崇的多语言编译器(从我收集的内容).我无法明确发现的一件事是:是否有可能在Windows上使用GCC 没有像CygwinMinGW这样的额外内容?

我已经了解到,如果你在Cygwin上使用GCC,那么就会依赖于DLL.如果你使用GCC与MinGW,你消除了这种依赖,但你仍然必须让MinGW使用GCC.

是否有可能构建GCC并单独使用它,完全原生于Windows?像微软的编译器?看完之后,我的猜测是否定的.但是如果可能的话,我仍然会想要更多信息.

如果没有,为什么GCC需要像Cygwin或MinGW这样的环境?我现在明白了.这是因为GCC需要Unix/POSIX环境.为什么会这样,它仍然超出我的范围.

我确实发现了这个并且它有所帮助,但并没有真正回答我的问题:为什么GCC-Windows依赖于cygwin?

为了改进我的问题,我想我正在试图 理解为什么GCC不能站在它自己的位置 - 我只有"GCC.exe".

windows gcc

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

是否可以在不完全禁用JavaScript的情况下禁用AJAX?

是否可以在不完全禁用JavaScript的情况下禁用AJAX?

javascript ajax

11
推荐指数
3
解决办法
2万
查看次数

sem_init(...):什么是pshared参数?

在研究生班,我们必须使用信号量来完成线程的工作.

我们被指示sem_init与一堆其他sem_*程序一起使用,但我们没有提供关于每个sem_*方法的详细信息.

原型(和头文件)的sem_init以下:

#include <semaphore.h>

int sem_init(sem_t *sem, int pshared, unsigned int value);
Run Code Online (Sandbox Code Playgroud)

但我不明白pshared值是用来做什么的.根据opengroup.org:

如果pshared参数具有非零值,则信号量在进程之间共享; 在这种情况下,任何可以访问信号量的进程都 sem可以sem用于执行 sem_wait(),sem_trywait()sem_post(),以及sem_destroy()操作.

但我想我不明白说1,2,10,25,50000等之间的区别.我认为如果值为0那么信号量就不会被共享.(但那么,重点是什么?)

如何正确使用此pshared参数?

multithreading semaphore

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