小编meh*_*tfi的帖子

INSTEAD OF触发器和CASCADE路径

假设我在层次结构中有3个表:

TableA -> TableB -> TableC
Run Code Online (Sandbox Code Playgroud)

TableC与外键有关系TableB,并且与TableB外键有关系TableA.

如果我删除了一个记录TableA,它应该通过层次结构向下级联删除.使用ON DELETE CASCADE会很好.

但是,假设我需要INSTEAD OF触发TableC.我的理解是,INSTEAD OF触发器不能放在具有删除级联的表上.摘自MSDN:

对于INSTEAD OF触发器,对于具有指定级联操作ON DELETE的引用关系的表,不允许使用DELETE选项.

如果我必须关闭级联删除TableB->TableC,我需要使用INSTEAD OF触发器来强制执行参照完整性,然后我遇到同样的问题TableB->TableA.这是一个简单的例子,但想象一下级联路径要大得多.看起来它很容易在一条长长的瀑布路上滚雪球.

那么处理这种情况的最佳做法是什么?

sql sql-server triggers referential-integrity cascade

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

如何在Windows 7中配置cabal?

我已经在Windows 7中安装了Haskell Platform 2012.我在控制台中写道cabal update,我发信息说有一个新版本的cabal.我写cabal install cabal-install.安装完成后,它告诉我cabal已安装在C:\ username\AppData\Roaming\cabal中.因此,当我cabal update再次这样做时,我正在采取相同的信息来安装新版本的cabal.我试图从配置文件更改cabal目录,但cabal忽略配置文件.Haskell只能在Unix上运行吗?谢谢

haskell cabal

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

OpenCV:src不是数字元组

我用python编写了一个关于颜色检测的程序.但是'Erode'句子总是出现错误.这是我的计划的一部分.谢谢.

# Convert the image to a Numpy array since most cv2 functions
# require Numpy arrays.
frame = np.array(frame, dtype=np.uint8)

threshold = 0.05
#blur the image
frame=cv2.blur(frame, (5,5))
#Convert from BGR to HSV
hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)
#split into 3
h, s, v= cv2.split(hsv)
#red color
s = cv2.threshold(h, 15, 1, cv2.THRESH_BINARY_INV)#1-15,x>15 y=0
h = cv2.threshold(h, 245, 1, cv2.THRESH_BINARY)#245-255 x>245 y=1
h = h + s
kernel = cv2.getStructuringElement(cv2.MORPH_RECT,(3, 3)) 
h = cv2.erode(h, kernel)
v = cv2.sumElems(h)
Run Code Online (Sandbox Code Playgroud)

python opencv numerical

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

自动生成层次结构值

我有一个树表列ID,ParentIDHierarchy和要生成Hierarchy列值依赖通过ParentID.为此,我使用触发器.是否存在生成层次结构列值的更好方法?

ALTER TRIGGER [TR_MyTable_BeforInsert] ON [MyTable]
INSTEAD OF INSERT
AS BEGIN
SET NOCOUNT ON;
Declare @Name NVarChar(100),
        @ParentID Int

Declare DACategory Cursor For
Select  A.Name, A.ParentID
From    Inserted A
OPEN    DACategory
FETCH NEXT FROM DACategory INTO @Name, @ParentID
While @@FETCH_STATUS=0 Begin

    Insert Into MyTable (Name, ParentID, Hierarchy)
    Values (@Name, @ParentID, dbo.F_MyTableGetHID(NULL, @ParentID))

    FETCH NEXT FROM DACategory INTO @Name, @ParentID
End
Close   DACategory
Deallocate DACategory
END
Run Code Online (Sandbox Code Playgroud)

功能:

ALTER FUNCTION [F_MyTableGetHID]
( …
Run Code Online (Sandbox Code Playgroud)

sql sql-server sql-server-2008 sql-server-2008-r2

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

通过Powershell部署dacpac导致错误:"无法确定域的身份"

有没有其他人遇到类似的问题,如下所述?

我在使用Powershell部署SQL Server 2012 dacpac数据库升级时遇到问题.详情如下所示:

它是为sql server 2012构建的dacpac文件,当我以管理员身份登录时,我试图通过Powershell从命令行运行它来应用于sql server 2012数据库.

使用"4"参数调用"Deploy"的异常:"无法确定域的身份." 在... so.ps1:17 char:8 + $ d.Deploy($ dp,$ TargetDatabase,$ true,$ DeployOptions)

编辑过的脚本(日志记录和文字更改)如下:

   [System.Reflection.Assembly]::LoadFrom("C:\Program Files (x86)\Microsoft SQL Server\110\DAC\bin\Microsoft.SqlServer.Dac.dll") | Out-Null

   $d = new-object Microsoft.SqlServer.Dac.DacServices ("... Connection string ...")

   $TargetDatabase = "databasename"
   $fullDacPacPath = "c:\temp\...\databasename.dacpac"

   # Load dacpac from file & deploy to database named pubsnew
   $dp = [Microsoft.SqlServer.Dac.DacPackage]::Load($fullDacPacPath)
   $DeployOptions = new-object Microsoft.SqlServer.Dac.DacDeployOptions
   $DeployOptions.IncludeCompositeObjects = $true
   $DeployOptions.IgnoreFileSize = $false
   $DeployOptions.IgnoreFilegroupPlacement = $false
   $DeployOptions.IgnoreFileAndLogFilePath = $false     
   $DeployOptions.AllowIncompatiblePlatform = $true  

   $d.Deploy($dp, $TargetDatabase,$true,$DeployOptions) 
Run Code Online (Sandbox Code Playgroud)

以下是一些支持信息:

  1. Dac框架版本是11.1 …

sql-server powershell dacpac

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

朱莉娅@everywhere变量

我正在尝试使用Julia并行实现代码.我正在使用@everywhere宏来使所有进程从RemoteRef获取数据.

是否可以使用仅在@everywhere表达式中的第一个进程上定义的变量名称,并以某种方式指定我希望它将该变量的值而不是变量名称发送到所有进程?

例:

r = RemoteRef()
put(r, data)
@everywhere data = fetch(r)
Run Code Online (Sandbox Code Playgroud)

这会返回错误,因为r未在所有进程上定义.

我应该如何将数据移动到所有进程?

另外,我可以告诉Julia在表达式中放置值而不是变量名吗?类似于如何name = "John"; println("Hello, $name")打印的东西"Hello, John"

parallel-processing multithreading julia

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

在SQL Server 2012中使用序列

我有SQL Server 2012,我想知道序列的用法是什么.我寻找一个样本来解释序列的用法.

编辑

我知道在数据库中创建和使用Sequence.我想知道使用Sequence的实际场景是什么.

sql-server sql-server-2012

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

分布式数据库事务与跨数据库事务

SQL Server中分布式数据库事务和跨数据库事务之间的区别是什么.

我知道Distribute数据库事务是多个数据库之间的事务,可以通过以下查询使用:

BEGIN DISTRIBUTED TRANSACTION
...
COMMIT TRANSACTION
Run Code Online (Sandbox Code Playgroud)

sql-server sql-server-2008 sql-server-2008-r2 sql-server-2012 sql-server-2014

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

带连接字符串的SQLCmd

我可以通过SQLcmd传递连接字符串吗?

我想在使用sqlcmd时通过连接字符串更改应用程序名称和故障转移伙伴(用于镜像).

现在.当我使用sqlcmd时,SQLcmd在sys.sysprocesses结果中设置我的连接的应用程序名称.

sql-server sql-server-2008 sql-server-2008-r2 sql-server-2012 sql-server-2014

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

如何为多个项目创建Gradle sharedManifest?

我有多个java项目.这些项目使用gradle创建jar,war和ear文件.在每个项目中,我使用清单文件来维护元数据,如版本,日期时间......为此我在每个build.gradle文件中都包含了清单文件创建逻辑.

manifest {
     attributes( 
    'Bundle-Vendor' : "$BUNDLE_VENDOR",
    'Build-Time': new Date().format("yyyy-MM-dd'T'HH:mm:ssZ")) 
}
Run Code Online (Sandbox Code Playgroud)

但在Gradle中有一个功能调用sharedManifest.我在主项目build.gradle脚本中定义了以下两个任务.但是在每个jar和war文件中都有Gradle创建的默认MANIFEST.MF文件.

ext.sharedManifest = manifest {

    attributes( 
        'Bundle-Vendor' : "$BUNDLE_VENDOR", 
         'Build-Time': new Date().format("yyyy-MM-dd'T'HH:mm:ssZ")
     ) 
}

task fooJar(type: Jar) {
    manifest = project.manifest {
        from sharedManifest
    }
}

task fooWar(type: War) {
    manifest = project.manifest {
        from sharedManifest
    }
}
Run Code Online (Sandbox Code Playgroud)

jar.manifest.writeTo("/ MANIFEST.MF")war.manifest.writeTo("/ MANIFEST.MF")

请有人提出如何做的建议.

java groovy gradle java-ee-7 build.gradle

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