小编RBa*_*ung的帖子

没有命名空间SQL2008的XQuery插入

<game xmlns="http://my.name.space" ></game>  
Run Code Online (Sandbox Code Playgroud)

这是我的根本要素.我编写了一个存储过程来插入元素.总结存储过程,这是SQL

UPDATE ChessGame SET GameHistory.modify('insert <move><player>black</player><piece>pawn</piece><start>E7</start><end>E6</end></move> as last into (/game)[0]') WHERE Id = @GameId;
Run Code Online (Sandbox Code Playgroud)

现在,当MSSQL插入时,还会插入一个空名称空间,因此结果就是这样

<move xmlns="">
  <player>black</player>
  <piece>king</piece>
  <start>E7</start>
  <end>E6</end>
</move>
Run Code Online (Sandbox Code Playgroud)

现在我尝试过使用它们

WITH XMLNAMESPACES(DEFAULT 'http://my.name.space')
Run Code Online (Sandbox Code Playgroud)

GameHistory.modify('declare default element namespace "http://my.name.space"; insert ...')
Run Code Online (Sandbox Code Playgroud)

但我到处都是前缀,每个元素都有一个命名空间声明.

代码库中出现问题,这些代码库缺少处理MSSQL输入的前缀的逻辑.最后,我只想在我的xml根中插入一个新元素并将命名空白留空(使用root默认值?).我对这一点都很陌生,但据我所知,如果我的根元素中有一个命名空间,那么所有的子节点都不应该有我的root的默认命名空间吗?

xml sql t-sql sql-server xquery

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

Django < - > SQL Server 2005,文本编码问题

我正在尝试使用以下方法将Django数据存储在MS SQL Server 2005上:

http://code.google.com/p/django-pyodbc/(pyodbc + FreeTDS)

只要我存储由ASCII字符组成的字符串,一切都可以.当我使用unicode(例如'\ xc5\x82')时,django会抛出ProgrammingError:

ProgrammingError at /admin/cli/punktrejestracji/add/
('42000', '[42000] [FreeTDS][SQL Server]The incoming tabular data stream (TDS) protocol stream is incorrect. The stream ended unexpectedly. (4002) (SQLExecDirectW)')
Run Code Online (Sandbox Code Playgroud)

跟踪的最后一个元素是:

params  ('\xc5\x82',)
self    <django.db.backends.sql_server.pyodbc.base.CursorWrapper object at 0x92ef8ec>
sql 'SELECT (1) AS [a] FROM [cli_punktrejestracji] WHERE [cli_punktrejestracji].[adres] = ? '
Run Code Online (Sandbox Code Playgroud)

BTW http://code.google.com/p/django-mssql/似乎不能在Linux下运行,django-mssql需要pythoncom库.我对吗?

sql-server django unicode odbc freetds

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

找出哪个类调用了一个方法

有没有办法,在C#中,一个类或方法知道谁(即什么类/方法)调用它?

例如,我可能有

class a{
   public void test(){
         b temp = new b();
         string output = temp.run();
   }
}

class b{
   public string run(){
        **CODE HERE**
   }
}
Run Code Online (Sandbox Code Playgroud)

输出:"由'a'类的'test'方法调用."

.net c# class

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

关于VBNET中的XML摘要注释的问题

Intellisense没有显示我的蓝色参数名称,就像我在第三方项目的其他xml评论中看到的那样Intellisense打印了所有信息,这就是我所看到的:

在此输入图像描述

我需要做什么修改才能让intellisense以蓝色打印参数注释作为"返回"?

    ''' <summary>
    ''' Function to pause a thread.
    ''' </summary>
    ''' 
    ''' <param name="Process_Name">The name of the process, ex: cmd.exe</param>
    ''' <param name="Thread_Number">The thread to pause, ex: 0</param>
    ''' <param name="Recursive"> <value name="True">Pause the thread in all processes recursively</value></param>
    ''' <returns>True if the process is found; otherwise, False.</returns>
    Public Shared Function Pause_Thread(ByRef Process_Name As String, _
                              Optional ByVal Thread_Number As Int32 = 0, _
                              Optional ByVal Recursive As Boolean = False) As Boolean
Run Code Online (Sandbox Code Playgroud)

xml vb.net intellisense visual-studio visual-studio-2012

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

SQL Server 查询未完成执行

我为 nOOb 问题道歉,但我有一个非常简单的 SQL Server 查询,它从表中选择数据。该表大约有 18 行,查询如下,

SELECT * FROM SavedJobs

这永远不会在 SQL SERVER MANAGEMENT STUDIO 上完成执行

但是当使用 WITH(NOLOCK) 运行时,它会吐出结果,例如,

SELECT * FROM SavedJobs WITH(NOLOCK)

我相信我的数据库上的某些内容锁定了 SavedJobs 表,我想找出并取消该锁定。有人可以指导我解决这个问题吗?

输出sp_lock

spid        dbid       ObjId     IndId     Type      Resource             Mode    Status
51           4              0              0              DB                                                          S              GRANT
52           7              0              0              DB                                                          S              GRANT
53           7              0              0              DB                                                          S              GRANT
54           4              0              0              DB                                                          S              GRANT
55           7              0              0              DB                                                          S              GRANT
56           7              0              0              DB …
Run Code Online (Sandbox Code Playgroud)

sql ssms sql-server-2008-r2

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

SQL 触发器的语法,用于在另一个数据库中插入数据,并在编辑字段后更新另一个数据库中的任何字段

这是场景 - 我会具体说明。我在 Sql 上有一个名为 [Fulcrum_Xfer] 的“桥接”数据库,我使用此桥接是因为名为 [Fulcrum UAT] 的主数据库对某些字段使用 bigint 数据类型,从而在我的 Access 前端的所有字段中显示“ #Deleted data ” - 这种行为在当前设计中无法更改(bigint 必须保留),因此我的 [Fulcrum_Xfer] 数据库中有准确的表名称和字段名称 - [Fulcrum_Xfer] 中的订单表中的 OrderNO 字段是 int,并且没有主字段钥匙

在“你让我们失望”的威胁下,我明天需要做的事情如下

最初插入或更新数据的表称为 Orders,位于 [Fulcrum_Xfer] 数据库中,结构如下

OrderNo                int              Unchecked
OrderDate              smalldatetime    Unchecked
ApplicationTenantLinkId int             Unchecked
OrderStatus             int             Unchecked
Run Code Online (Sandbox Code Playgroud)

FulCrum_Xfer 中从 Orders 接收触发数据的表称为 Orders,它在数据库 Fulcrum UAT 中的结构为

OrderNo                bigint           Unchecked  Primarykey 
OrderDate              smalldatetime    Unchecked
ApplicationTenantLinkId Bigint          Unchecked
OrderStatus             int             Unchecked
Run Code Online (Sandbox Code Playgroud)

我需要两个触发器语句,在将新记录插入到 [FulCrum_Xfer] 中的订单后,将其插入到 [Fulcrum UAT] 中的订单中

当我在 [Fulcrum_Xfer] 中的订单中进行更改时,我需要一个触发器来更新 [Fulcrum UAT] 中的订单中的任何字段

除了 …

database sql-server triggers

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

对象超出范围

我们有类似下面的代码来修复CA2000:在丢失范围之前处理对象(http://msdn.microsoft.com/en-us/library/ms182289.aspx).当tbl被赋值为null时,它引用垃圾的对象会被收集吗?

    private DataTable BuildRequestDataTable(Factory tableFactory)
    {
        DataTable tbl = null;
        DataTable requestTable = null;
        try
        {
            tbl = tableFactory.CreateTable();
            requestTable = tbl;
            tbl = null;
        }
        finally
        {
            if (tbl != null)
            {
                tbl.Dispose();
            }
        }

        return requestTable;
    }
Run Code Online (Sandbox Code Playgroud)

c# garbage-collection reference

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

实现用于检测自相交多边形的强力算法

我最初实现了Hoey-Shamos算法,但它对于将来的可维护性来说太复杂了(我在这里没有说法),并且没有正确报告,因此我将使用优化的强力算法.

我的问题是:如何优化此代码才能使用?

就目前而言,我的代码包含一个嵌套的for循环,两次迭代相同的列表.

编辑:将线条转换为HashSet并使用两个foreach循环...扫描10,000个约45秒.这还不够.

foreach (Line2D g in lines)
{                   
foreach (Line2D h in lines)
{
    if (g.intersectsLine(h))
    {
        return false;
    }
}                  

 } // end 'lines' for each loop
Run Code Online (Sandbox Code Playgroud)

如果我强制我的"intersectsLine()"方法返回false(出于测试目的),扫描10,000条记录仍然需要8秒(我有700,000条记录).这太长了,所以我需要优化这段代码.

我尝试在将其与所有其他线路进行比较后从列表中删除线路,但是存在准确性问题(不明白为什么)并且速度增加几乎不可察觉.

这是我的intersectsLine方法.我在这里找到了另一种方法,但看起来所有的方法调用和诸如此类的东西都会变慢.在我看来,计算坡度似乎并不需要太多计算(如果我错了,请纠正我?)

public bool intersectsLine(Line2D comparedLine)
{

//tweakLine(comparedLine);
if (this.Equals(comparedLine) ||
    P2.Equals(comparedLine.P1) ||
    P1.Equals(comparedLine.P2))
{
    return false;
}

double firstLineSlopeX, firstLineSlopeY, secondLineSlopeX, secondLineSlopeY;

firstLineSlopeX = X2 - X1;
firstLineSlopeY = Y2 - Y1;

secondLineSlopeX = comparedLine.X2 - comparedLine.X1;
secondLineSlopeY = comparedLine.Y2 - comparedLine.Y1;

double s, …
Run Code Online (Sandbox Code Playgroud)

c# algorithm arcgis shapefile polygons

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

数据库设计启用多个标签,如Stackoverflow?

我有以下表格.

文章
a_id INT主要唯一
名称 VARCHAR
描述 VARCHAR
c_id INT

类别
ID INT
cat_name VARCHAR

现在我只是使用

SELECT a_id,name,Description,cat_name FROM Articles LEFT JOIN Category ON Articles.a_id=Category.id WHERE c_id={$id}

这给了我所有属于某个类别的文章以及类别名称.
每篇文章只有一个类别.

我以类似的方式使用子类别(我有另一个名为sub_cat的表).
但是每篇文章都没有必要的子类别.它可能属于多个类别.

我现在想到标记一个包含多个类别的文章就像stackoverflow中的问题被标记一样(例如:有多个标签,如PHP,MYSQL,SQL等).

以后我必须显示(过滤)所有文章与某些标签(例如:标记为php,php + MySQL),我还必须显示标签以及文章名称,描述.
谁能帮我重新设计数据库?(我在后端使用php + MySQL)

mysql database database-design junction-table database-schema

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

如何使用批量插入根据文件扩展名导入文件?

我有一个文件夹,每小时创建一个新的日志文件.每次文件名都不同.如何基于任何具有扩展名.log的文件批量插入?这是我的代码

select * from [data_MaximusImport_t]
BULK
INSERT Data_MaximusImport_t
FROM 'C:\Program Files (x86)\DataMaxx\*.log'
WITH
(FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n'
) 
Run Code Online (Sandbox Code Playgroud)

现在我得到错误*.log"无法打开.操作系统错误代码123(文件名,目录名或卷标语法不正确.).

***这是我原始问题的编辑.我能够用这段代码找出文件名

DECLARE @Path varchar(256) = 'dir C:\datamaxx\*.log'
DECLARE @Command varchar(1024) =  @Path + ' /A-D  /B'
INSERT INTO myFileList
EXEC MASTER.dbo.xp_cmdshell @Command
SELECT * FROM myFileList
Run Code Online (Sandbox Code Playgroud)

现在我只需要弄清楚如何在路径中粘贴该名称.我应该将文件名作为变量吗?

sql sql-server import bulkinsert

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