我设计了一个表格,其数据包含 \n 字符(作为分隔符,我使用它而不是逗号或其他任何内容)。它必须保存 \n 字符,因为在将表加载到 DataTable 对象后,我可以将值拆分为带有分隔符 '\n' 的字符串数组,如下所示:
DataTable dt = LoadTable("myTableName");
DataRow dr = dt.Rows[0]; //suppose this row has the data with \n character.
string[] s = dr["myColumn"].ToString().Split(new char[]{'\n'}, StringSplitOptions.RemoveEmptyEntries);//This gives result as I expect, e.g an array of 2 or 3 strings depending on what I saved before.
这意味着 '\n' 确实存在于我的表格列中。但是当我尝试在 myColumn 中仅选择包含 \n 字符的行时,它没有返回任何行,如下所示:
--use charindex
SELECT * FROM MyTable WHERE CHARINDEX('\n',MyColumn,0) > 0
--use like
SELECT * FROM MyTable WHERE MyColumn LIKE '%\n%'
我想知道我的查询是否错误?
我也用 '\r\n' 和 '\r' 进行了测试,但结果是一样的。
如何检测表中的行是否包含 '\n' 字符?这是选择我想要的行所必需的(这是我在选择 '\n' 作为分隔符时的设计)。
非常感谢您!