小编Lan*_*rry的帖子

SQL Server - 插入触发器后 - 更新同一个表中的另一列

我有这个数据库触发器:

CREATE TRIGGER setDescToUpper
ON part_numbers
 AFTER INSERT,UPDATE
AS
DECLARE @PnumPkid int, @PDesc nvarchar(128)

SET @PnumPkid = (SELECT pnum_pkid FROM inserted)
SET @PDesc = (SELECT UPPER(part_description) FROM inserted)

UPDATE part_numbers set part_description_upper = @PDesc WHERE pnum_pkid=@PnumPkid

GO
Run Code Online (Sandbox Code Playgroud)

这是一个坏主意吗?那就是更新同一个表上的列.我希望它为插入和更新启动.

它有效,我只是害怕周期性的情况.触发器内的更新会一次又一次地触发触发器.那会发生吗?

请不要挑选大写的东西.疯狂的情况.

sql-server triggers sql-server-2008

24
推荐指数
3
解决办法
20万
查看次数

在视图中转换科学记数法(来自varchar - >数字)

由于我无法帮助的原因,我有一个varchar列,其数据如下:820.0E-12,10.0E + 00.

我想要数值.所以我有这个测试查询工作:

declare @d varchar(256)
set @d = '820.0E-12'
select 
   CASE 
      WHEN @d like '%E-%' THEN LTRIM(RTRIM(CAST(CAST(@d AS FLOAT) AS DECIMAL(18,18))))
      WHEN @d like '%E+%' THEN NULL
      ELSE @d
   END
Run Code Online (Sandbox Code Playgroud)

我的结果是:0.000000000820000000(这就是我想要的)

我更改我的SQL以考虑数字> 0(10.0E + 00),如下所示:

WHEN @d like '%E+%' THEN CAST(@d AS FLOAT)
Run Code Online (Sandbox Code Playgroud)

我的结果变为:8.2E-10(这不是我想要的)

如果我改变@ d = '10 .0E + 00'那么我得到10(这是正确的).

我有一个视图,我需要从varchar列输出,包含科学记数法,铸造/转换为十进制(18,18).

有人能告诉我这里发生了什么疯狂吗?

或者,也许我的问题应该是,如何在视图中将varchar科学记数法列转换/转换为十进制输出?

我的第一个WHEN语句适用于数字<0,但我还需要考虑数字> 0.当我更改第二个WHEN时,要包含CAST,它会中断/给出错误的结果.

sql sql-server-2008

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

jQuery - javascript错误 - cisco web vpn

我有一个非常独特的情况.

我们在工作中使用Cisco Web VPN(不知道具体名称).

如果我尝试使用我开发的网页,javascript就会被破坏.

我跟踪到了这个:

使用Cisco Web VPN时,它实际上会重写一些HTML/JavaScript代码.例如,在源头的最开始,它已经卡住了以下内容:

<script  id='CSCO_GHOST' src="/+CSCOL+/cte.js"></script>
Run Code Online (Sandbox Code Playgroud)

这是在<html>开始标记之后(而不是在<head>标记内).

在那个源cte.js里面,有一个错误.该错误导致jQuery无法正常运行.cte.js是思科产品的一部分,完全不受我的控制.

我知道如何使用windows.onerror捕获错误,但这不适用于这种情况.在将脚本加载到页面之前发生错误.

关于如何抑制此错误或解决此类问题的任何想法?

我把<script>标签放在了<head>底部,然后将它们移到了底部,<body>两个地方都没有区别.

更新: 再看一下,它是jQuery中的东西.我注释掉了<script>jQuery 的标签,但没有发生错误.没有注释,错误又回来了.

javascript error-handling

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

通过VPN的Intranet网站

我创建了一个应用程序,它从In TRA网站上的Web服务获取数据.为了让我的应用程序看到这些网站,我必须打开为我们公司内部网设置的VPN.因此,当我打开VPN时,它要求进行身份验证.必须在我的应用程序启动之前打开,因为我知道无法通过代码访问VPN(SDK中是否有任何与VPN协同工作的内容?)

问题是,一旦我的我的应用程序启动,它需要对企业内部网的网站进行身份验证(验证不能被关闭出于安全原因).

所以在这种情况下:

  1. 用户打开VPN,输入网络凭据以访问内部网络
  2. 用户启动要求网络凭据的应用程序(因为Web服务器要求auth)

因此,您可以看到这非常痛苦(必须两次输入网络凭据).

有人对我如何解决这个问题有任何想法吗?

BTW - 我在我的代码中使用ASIHTTPRequest.

iphone

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

Windows服务 - 配置文件

我知道之前可能已经提出这个问题,但我似乎找不到合适的答案.

我有一个名为foob​​ar.exe的Windows服务.我在同一文件夹中有一个名为foob​​ar.exe.config的应用程序配置文件.

配置文件是否仅在启动时读取?

我想更改配置文件而不必重新启动服务,但这是我可以读取新设置的唯一方法.

我究竟做错了什么?

Windows服务可以有动态配置文件吗?

.net windows-services

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

angularjs指令中的handsontable - 渲染具有ng-click的锚点

所以我使用Handsontable渲染网格.(是的,我没有使用ngHandsontable.我从那开始,但遇到了问题,所以我只是从angularjs指令渲染一个Handsontable.)

我想要一个列来保存锚标记.

我希望anchor标签具有angularjs ng-click指令.

所有内容都正确呈现,但不会调用ng-click .

这是我的例子.

var APP = angular.module('APP', ['controllers']);

angular.module('controllers',[])
.controller('testController', function ($scope) {
    $scope.doNgClick = function() {
        alert('ng-click');  
        // console.log('ng-click');  
    };
    $scope.simple = [
        {
            test: "<a href='javascript:void(0);' ng-click='doNgClick()'>Test</a>"
            // test: "<a ng-click='doNgClick()'>Test</a>"
        }
    ];
});

APP.directive('htable',function($compile) {
    var directive = {};
    directive.restrict = 'A';
    directive.scope = {
        data : '='
    };
    directive.link = function(scope,element,attrs) {
        var container = $(element);
        // var safeHtmlRenderer = function (instance, td, row, col, prop, value, cellProperties) {
        // …
Run Code Online (Sandbox Code Playgroud)

angularjs handsontable angularjs-directive

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