[英]Error in selecting and copying data from one datatable into another?
我试图从一个数据表中选择一些数据,然后根据条件将其保存到另一个数据表中。 我收到错误-System.Data.SyntaxErrorException:无法解释令牌'!' 在位置6。
正确的语法是什么,在哪里可以看到执行SQL Server等查询的C#语句列表。
DataTable parent = some datatable from SQL server;
DataTable child = new DataTable();
child = parent.Select("cols != -1").CopyToDataTable();
为什么从sql-server中选择一个表,首先要对其进行过滤? 您不能将此添加到WHERE- WHERE
吗?
使用.NET 3.5,您应该能够使用更强大,更易读的Linq-To-DataSet
:
DataTable parent = GetTable();
DataTable child = parent.AsEnumerable()
.Where(row => row.Field<int>("cols") != -1)
.CopyToDataTable();
如果要使用DataTable.Select
,请DataTable.Select
选择<>
代替!=
。
DataRow[] filtered = parent.Select("cols <> -1");
在这里查看表达式语法: http : //msdn.microsoft.com/zh-cn/library/system.data.datacolumn.expression(v=vs.110).aspx
创建比较表达式时,允许使用以下运算符:
<
>
<=
>=
<>
=
IN
LIKE
表达式中还支持以下算术运算符:
+ (addition)
- (subtraction)
* (multiplication)
/ (division)
% (modulus)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.