Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/318.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# visual studio中具有多个空值的唯一列_C#_Sql Server_Winforms_Sql Server Ce - Fatal编程技术网

C# visual studio中具有多个空值的唯一列

C# visual studio中具有多个空值的唯一列,c#,sql-server,winforms,sql-server-ce,C#,Sql Server,Winforms,Sql Server Ce,我希望对可能包含空值的条形码列具有唯一约束 如何创建允许多个空值的约束 我使用一个本地数据库.sdf文件(Microsoft SQL Server Compact 4.0和Microsoft SQL Server Compact 4.0的.NET Framework数据提供程序) 我试过: 但它不起作用 我得到的错误是: 分析查询时出错,[Token line number=1,Token line offset=64,Token in error=WHERE] 有任何帮助吗?更新:SQL Se

我希望对可能包含空值的
条形码
列具有唯一约束

如何创建允许多个空值的约束

我使用一个本地
数据库.sdf
文件(Microsoft SQL Server Compact 4.0和Microsoft SQL Server Compact 4.0的.NET Framework数据提供程序)

我试过:

但它不起作用

我得到的错误是:

分析查询时出错,[Token line number=1,Token line offset=64,Token in error=WHERE]


有任何帮助吗?

更新:SQL Server Compact 4.0中不支持筛选的索引

参考:

TSQL语法是正确的(假设您有SQL Server 2008+。SQL Server 2008中引入了筛选索引)

更改此项:

        cmd.ExecuteReader();
对此

        cmd.ExecutNonQuery();

此外,您应该使用块将连接包装在一个
中。

更新:SQL Server Compact 4.0中不支持过滤索引

参考:

TSQL语法是正确的(假设您有SQL Server 2008+。SQL Server 2008中引入了筛选索引)

更改此项:

        cmd.ExecuteReader();
对此

        cmd.ExecutNonQuery();

此外,您应该使用
块将连接包装在一个
中。

更新:SQL Server Compact 4.0中不支持过滤索引

参考:

TSQL语法是正确的(假设您有SQL Server 2008+。SQL Server 2008中引入了筛选索引)

更改此项:

        cmd.ExecuteReader();
对此

        cmd.ExecutNonQuery();

此外,您应该使用
块将连接包装在一个
中。

更新:SQL Server Compact 4.0中不支持过滤索引

参考:

TSQL语法是正确的(假设您有SQL Server 2008+。SQL Server 2008中引入了筛选索引)

更改此项:

        cmd.ExecuteReader();
对此

        cmd.ExecutNonQuery();

另外,您应该使用
块将连接包装在一个
中。

SQL Server 2008中引入了筛选索引。在该版本之前,在这样的语句中,
where
子句会出现错误。如果您使用的是较新的版本,可能是您的兼容性设置导致了问题

兼容性级别是使给定版本的SQL Server的行为与早期版本类似的一种方法。级别80和90适用于2000和2005,因此不允许使用语法。这是一些文档

如果每行上都有唯一的id,则可以使用计算列和唯一索引来实现相同的效果:

alter table product add barcode_productid as (case when barcode is null then productid end);

CREATE UNIQUE NONCLUSTERED INDEX Barcodex ON Products(Barcode, barcode_productid);

SQL Server 2008中引入了筛选索引。在该版本之前,在这样的语句中,
where
子句会出现错误。如果您使用的是较新的版本,可能是您的兼容性设置导致了问题

兼容性级别是使给定版本的SQL Server的行为与早期版本类似的一种方法。级别80和90适用于2000和2005,因此不允许使用语法。这是一些文档

如果每行上都有唯一的id,则可以使用计算列和唯一索引来实现相同的效果:

alter table product add barcode_productid as (case when barcode is null then productid end);

CREATE UNIQUE NONCLUSTERED INDEX Barcodex ON Products(Barcode, barcode_productid);

SQL Server 2008中引入了筛选索引。在该版本之前,在这样的语句中,
where
子句会出现错误。如果您使用的是较新的版本,可能是您的兼容性设置导致了问题

兼容性级别是使给定版本的SQL Server的行为与早期版本类似的一种方法。级别80和90适用于2000和2005,因此不允许使用语法。这是一些文档

如果每行上都有唯一的id,则可以使用计算列和唯一索引来实现相同的效果:

alter table product add barcode_productid as (case when barcode is null then productid end);

CREATE UNIQUE NONCLUSTERED INDEX Barcodex ON Products(Barcode, barcode_productid);

SQL Server 2008中引入了筛选索引。在该版本之前,在这样的语句中,
where
子句会出现错误。如果您使用的是较新的版本,可能是您的兼容性设置导致了问题

兼容性级别是使给定版本的SQL Server的行为与早期版本类似的一种方法。级别80和90适用于2000和2005,因此不允许使用语法。这是一些文档

如果每行上都有唯一的id,则可以使用计算列和唯一索引来实现相同的效果:

alter table product add barcode_productid as (case when barcode is null then productid end);

CREATE UNIQUE NONCLUSTERED INDEX Barcodex ON Products(Barcode, barcode_productid);


您使用的是什么版本的SQL Server?@GordonLinoff SQL Server 2008 R2您使用的是什么版本的SQL Server?@GordonLinoff SQL Server 2008 R2您使用的是什么版本的SQL Server?@GordonLinoff SQL Server 2008 R2您能解释一下兼容性设置可能导致的问题吗此问题?代码抛出错误分析查询时出错,[Token line number=1,Token line offset=64,Token in error=WHERE]
您能否解释什么兼容性设置可能导致此问题?代码抛出错误分析查询时出错,[Token line number=1,Token line offset=64,Token in error=WHERE]您能解释一下什么兼容性设置会导致这个问题吗?代码抛出一个错误
解析查询时出错,[Token line number=1,Token line offset=64,Token in error=WHERE]
您能解释一下什么兼容性设置会导致这个问题吗?代码抛出一个错误
解析查询时出错,[令牌行编号=1,令牌行偏移量=64,令牌错误=WHERE]
我在每一行上都有一个唯一的列,我在下面尝试了@GordonLinoff代码,但它抛出错误
解析查询时出错,[令牌行编号=1,令牌行偏移量=64,令牌错误=AS]
我在每一行上都有一个唯一的列,我在下面尝试了@GordonLinoff代码,但它抛出错误
解析查询时出错