Как получить значение по умолчанию столбца SQLite, чтобы не включать строковые кавычки - PullRequest
0 голосов
/ 23 января 2020

Я пытаюсь ввести значения по умолчанию для некоторых столбцов в SQLite. Если я использую одинарные кавычки, чтобы заключить строку, это будет включать в себя кавычки. Единственный способ не включать кавычки - это не использовать кавычки, которые не будут работать, если в строке есть какие-либо специальные символы или пробелы.

Пример оператора, который я пытаюсь использовать, будет иметь вид:

CREATE TABLE tablename (id INTEGER NOT NULL, [columnname] TEXT DEFAULT DefValue, PRIMARY KEY (id))

Если для DefValue задано значение John, то оно работает нормально, а когда в таблице выдается значение по умолчанию, у него нет заключенных в кавычки или скобок. Если я использую «Джон», «Джон», [Джон], «Джон Смит» или со специальными символами, такими как «F! @ # 4%», значение по умолчанию создается с помощью заключенных в кавычки / скобок. Если я не использую заключенные в скобки / кавычки и есть специальный символ, как и ожидалось, запрос не будет работать.

Есть ли способ добавить значение по умолчанию с пробелами или специальными символами и не получит заключающие в кавычки?

1 Ответ

0 голосов
/ 23 января 2020

Я разобрался в проблеме. Это был не SQLite. Я постараюсь кратко объяснить. Я использую SQLite в качестве локальной базы данных для программы. NET. Изначально я не думал, что это связано с программой. NET, потому что думал, что воспроизводил проблему в редакторе SQLite, который недавно начал опробовать. После публикации я понял, что это не воспроизводит в редакторе SQLite. Было поздно, и я устал и расстроился. Основная проблема заключалась в том, что в программе. NET адаптер данных не извлекает значения по умолчанию при использовании метода dataadapter.fillschema, поэтому у меня была подпрограмма, извлекающая значения по умолчанию из SQLite через запрос SELECT, и. NET добавила значение по умолчанию значения для столбцов данных. Я не осознавал, что он возвращал одинарные кавычки, содержащие строковый литерал (ie. Кавычки вокруг «Джона Смита»). У меня была подпрограмма удалить кавычки перед назначением значения по умолчанию для столбца данных в. NET.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...