Во-первых, мне нравится указывать типы данных, и я презираю AddWithValue
функции.
Я создаю приложение локальной базы данных SqlCeServer 3.5 под .NET 4.0, которое будет работать на ПК пользователя.
При создании таблицы я использую NVarChar(50)
для указания своих строковых полей.
Кажется, это работает нормально, и я могу открыть таблицу, чтобы проверить, все ли хорошо работает в Microsoft SQL Server Management Studio 2008 .
Когда я вставляю данные в свои таблицы, я использую
public static SqlCeParameter ParameterString(string ColumnName, string value) {
SqlCeParameter p = new SqlCeParameter();
p.ParameterName = string.Format("@{0}", ColumnName);
p.DataType = DbType.String;
p.Size = 50;
p.Value = value;
return p;
}
Когда я вставляю эти данные, ошибок нет, но данные не вставляются. Другие типы данных (int
, DateTime
, float
и т. Д.) Вставляются без проблем.
В: Есть ли какие-то другие DbType
, которые мне нужно указать, чтобы вставить как NVarChar
?