Я разработал таблицу со столбцом, данные которого содержат символ \ n (в качестве разделителя я использовал это вместо запятой или чего-то еще). Он должен сохранить \ п символов OK, потому что после загрузки таблицы в DataTable объекта, можно разделить значения в массивы строки с разделителем «\ п», как это:Обнаруживать n символ, сохраненный в таблице SQLite?
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.
Это означает, что «\ п» существует в моем столбце таблицы. Но когда я попытался выбрать только те строки, которые содержат \ п символ в MyColumn, он дал строки не вернулся, как это:
--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» в качестве разделителя).
спасибо, что заблаговременно!
Вау, твоя догадаться! Это даже чище, чем мое решение. Большое спасибо за эту акцию !!! =) +1 –
Однако вы, возможно, не знаете об операторе конкатенации, используемом в SQLite, это не +, это значение ||. Однако вся идея полезна, поэтому я принял ваш ответ! Вы должны обновить свой ответ, чтобы изменить + на || :) –
Хороший улов; Я обновлю ответ. – BellevueBob