问题列表 - 第75556页

Access中有多个LEFT JOIN

我有以下查询,适用于MySQL:

DELETE `test1`, `test2`, `test3`, `test4` FROM
`test1` LEFT JOIN `test2` ON test2.qid = test1.id
LEFT JOIN test3 ON test3.tid = test2.id
LEFT JOIN test4.qid = test1.id
WHERE test1.id = {0}
Run Code Online (Sandbox Code Playgroud)

但它不适用于MS Access.我试图在LEFT JOIN它周围添加括号,但它在FROM子句中给出了语法错误.那么这个查询应该怎样才能在MS Access中工作?

sql ms-access jet sql-delete

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

获取仅为数字的记录

我正在运行此查询.在大多数情况下它工作正常,但有一些记录有非数字部分,这会导致问题.我需要能够只选择整数的记录.

select distinct SUBSTRING(PAPROJNUMBER, 1, 5) AS STUDY_NUMBER
        FROM         dbo.PA01201 AS PA01201_1
        where PAPROJNUMBER>'0'
Run Code Online (Sandbox Code Playgroud)

例如,结果列表的一部分如下所示:

68145
68146
68147
7762A
99999
LABOR
Run Code Online (Sandbox Code Playgroud)

除了7762A和LABOR,我想要所有这些.如何修改where子句以有效实现?

sql-server sql-server-2005

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

如何将字节打印为两位十六进制字符?

我需要在Windows中生成C中的随机GUID.我有:

HCRYPTPROV hCryptProv = 0;
BYTE pbBuffer[16];
int i;
if (!CryptAcquireContextW(&hCryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT | CRYPT_SILENT))
    exit(1);
for (i = 0; i < N; i++) {
    if (!CryptGenRandom(hCryptProv, 16, pbBuffer))
        exit(1);
    printf("%X%X%X%X-%X%X-%X%X-%X%X-%X%X%X%X%X%X\n", pbBuffer[0], pbBuffer[1], pbBuffer[2], pbBuffer[3],
                                                     pbBuffer[4], pbBuffer[5], pbBuffer[6], pbBuffer[7],
                                                     pbBuffer[8], pbBuffer[9], pbBuffer[10], pbBuffer[11],
                                                     pbBuffer[12], pbBuffer[13], pbBuffer[14], pbBuffer[15]);
}
Run Code Online (Sandbox Code Playgroud)

但是,这会将任何小于0F的字节打印为单个字符(例如,0000-00-00-00-000000如果每个字符pbBuffer[j]都是0).我需要打印每个字节为两个字符(例如,00000000-0000-0000-0000-000000000000如果每个字符pbBuffer[j]都是0).我怎样才能做到这一点?

c printf

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

Javascript"单一var模式"的缺点

在Stefanov的JS Design Patterns一书中,他写道"你使用一个var语句并声明用逗号分隔的多个变量",然后给出一个"single var"模式的例子,如下所示:

function func() {
    var a = 1,
        b = 2,
        sum = a + b,
        myobject = {},
        i,
        j;
Run Code Online (Sandbox Code Playgroud)

斯特凡诺夫还写道:

  • "在您声明变量时,也可以使用初始值初始化变量,这是一个很好的做法."
  • "您还可以在声明时进行一些实际工作,例如前面代码中sum = a + b的情况."

现在我有一些代码如下,用单个var模式声明相同数量的变量,但做了更多"声明时的实际工作":

var html = '{purchaseQty}<br>FR:&nbsp; {fromLoc}'
    ,tpl = new Ext.XTemplate(html)
    ,srcReqLoc = record.get('SRC_REQUEST_LOC').trim()
    ,srcSupLoc = record.get('SRC_SUP_LOC').trim()
    ,fromLoc = srcReqLoc ? srcReqLoc : srcSupLoc
    ,tplCfg = {
        purchaseQty: purchaseQty
        ,fromLoc: fromLoc
    };
Run Code Online (Sandbox Code Playgroud)

做太多"宣布时的实际工作"有什么缺点?顺便说一下,我不认为这是Javascript单一var模式的完全重复.我超载了吗?因为我问的是一般的缺点,而不仅仅是我的代码可能出错.

我想我可以看到一般的缺点是无法检查错误,例如在我的例子中我在从record.get预期返回的字符串上调用trim(),但如果返回undefined,则"无法调用方法"在未定义的对象上"(或者它是什么;)将被抛出.任何人都可以想到其他什么吗?

javascript design-patterns declaration variable-assignment variable-declaration

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

为什么String.prototype的方法可用于字符串文字?

这个问题来自另一个问题,它涉及console.dir字符串文字的行为.特别是,请参阅我的回答评论.

众所周知,StringJavaScript中的对象有很多方法.这些方法是在String.prototype对象上定义的.String.prototype.toUpperCase例如.因此我们可以这样做:

var s = new String("hello"),
    s2 = s.toUpperCase();      //toUpperCase is a method on String.prototype
Run Code Online (Sandbox Code Playgroud)

但是,我们也可以这样做:

var s = "hello",               //s is a string literal, not an instance of String
    s2 = s.toUpperCase();
Run Code Online (Sandbox Code Playgroud)

很明显,当您String.prototype在字符串文字上调用方法时,JavaScript解释器正在进行某种形式的转换/转换.但是,我在规范中找不到任何对此的引用.

这是有道理的,因为否则你必须明确地将每个字符串文字强制转换为一个String对象,然后才能使用任何方法,这将非常烦人.

所以我的问题是,这个功能在哪里描述,我是否正确假设文字值暂时转换为实例String?我是否过度思考并忽略了一些明显的东西?

javascript

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

应用全局CSS重置后获取默认属性

我必须构建的一些遗留代码,让我感觉全局CSS重置的缺点.

我有旧的foo.css开头

* {margin:0; padding:0;}
Run Code Online (Sandbox Code Playgroud)

我曾经把它复制到一个不同的文件bar.css,调整它我的需要(与CSS重置),并使用它只替换foo.css我正在编写的代码.我这样做并不担心与网站旧版部分的向后兼容性.

现在这非常麻烦:对于全局变化,我必须记住修改这两个文件.所以现在我bar.css正在扩展foo.css,从:

@import url("style.css");
Run Code Online (Sandbox Code Playgroud)

问题是现在我还继承了CSS重置.

是否有任何方法(†)将某些元素(标题,列表等)的margin&padding属性恢复为默认值 - 重置之前应用的值?

(†)除了手动将每个属性设置回其初始值之外,如CSS规范中所定义.

html css legacy cross-browser backwards-compatibility

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

如何从PHP中的Stackoverflow API读取GZIP-ed响应?

如何从PHP中读取Stackoverflow API的响应?回复是GZIP-ed.我发现了以下建议:

$url = "http://api.stackoverflow.com/1.1/questions/" . $question_id;
$data = file_get_contents($url);
$data = http_inflate($data);
Run Code Online (Sandbox Code Playgroud)

但该功能http_inflate()在我正在使用的安装上不可用.

还有其他一些简单的方法来实现它吗?

php gzip

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

MySQL查询嵌套查询

我试图在MySQL(phpmyadmin)和PHP上运行嵌套查询,两者都导致相同的输出不正确.

注意:由于项目的敏感性,表名已被剪裁

SELECT * FROM `table1` WHERE ID="SELECT `field1` FROM `table2` WHERE ID=1"
Run Code Online (Sandbox Code Playgroud)

这将返回零行,尽管每个查询单独提供有效输出,如下所示

SELECT `field1` FROM `table2` WHERE ID=1
Run Code Online (Sandbox Code Playgroud)

提供所需的输出,当在主查询的第一部分中使用时,此输出还提供了所需的输出.请帮忙.

php mysql

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

使用ServiceController和模拟启动远程Windows服务

我有一个.NET MVC3应用程序,该应用程序需要能够打开和关闭远程服务。为此,我通过WindowsIdentity.Impersonate()模拟了一个特定的用户帐户。要测试用户的权限,我可以以用户身份登录并sc.exe \\[server] start [service]在命令提示符下执行。我还知道模仿命令可以按预期工作,因为该应用程序以匿名方式运行,因此无法在.没有模仿的情况下控制本地计算机()上的服务,但可以通过模仿控制本地服务。但是,当我将它们放在一起并尝试启动远程服务而不是本地服务时,总是出现错误“无法[service]在计算机' [server]' 上打开服务”

有没有人遇到过类似的问题?我一直以为它是服务器配置而不是.NET问题,直到我意识到sc.exe可以正常工作。这是我正在使用的类的缩写版本:

public class Service
{
    public string Name;
    public bool Running;
    private ServiceController serviceController;

    public Service(string name, string host)
    {
        Name = name;

        serviceController = new ServiceController(Name, host);
        Running = serviceController.Status == ServiceControllerStatus.Running;
    }

    public bool StartService()
    {
        ServiceControllerPermission scp = new ServiceControllerPermission(ServiceControllerPermissionAccess.Control, serviceController.MachineName, Name);
        scp.Assert();

        serviceController.Start();
        serviceController.WaitForStatus(ServiceControllerStatus.Running, new TimeSpan(0, 0, 5));
        serviceController.Refresh();

        Running = serviceController.Status == ServiceControllerStatus.Running;

        return Running;
    }
} …
Run Code Online (Sandbox Code Playgroud)

.net impersonation windows-services servicecontroller

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

循环下拉列表

我想循环下拉列表并在标签中写入所选项的值.我之前已经选择了单选按钮,但是使用下拉列表它将无法正常工作.现在,一些代码.

这里生成的HTML代码值不是很有趣.

<select id="alternativeNumbers" name="alternativeNumbers">
   <option value="1_A">Text</option>
   <option value="2_B">Text</option>
   <option value="3_C">Text</option>
   <option value="4_D">Text</option>
   <option value="5_E">Text</option>
   <option value="6_F">Text</option>
</select>
Run Code Online (Sandbox Code Playgroud)

用于将事件绑定到下拉列表的代码.

$(function () {
    var dropdown = document.getElementsByName("alternativeNumbers");
    $(dropdown ).change(function () {
        updateAlternativeDropdown();
    });
});
Run Code Online (Sandbox Code Playgroud)

最后是事件调用的方法.这应该填写标签.

function updateAlternativeDropdown() {
    var dropdown = document.getElementsByName("alternativeNumbers");
    var lengthDropDown = addAlternativeArticleNumberDropdown.length;
    for (var i=0; i < lengthDropDown; i++) 
    {
        //This alert is for the behavior of the output!
        alert(addAlternativeArticleNumberDropdown[i].value);
        if (addAlternativeArticleNumberDropdown[i].selected) {
            var valueOfDropdown = addAlternativeArticleNumberDropdown[i].value;
            var splittedValues = valueOfDropdown.split("_");
            document.getElementById("label1").innerText = splittedValues[0];
            document.getElementById("label2").innerText = splittedValues[1]; …
Run Code Online (Sandbox Code Playgroud)

html javascript jquery drop-down-menu

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