簡體   English   中英

為SQLite編寫驗證層的最佳方法是什么

[英]What is the best way to write a validation layer for SQLite

我正在使用SQLite的ADO.net提供程序。 我想引導SQLite的一些“特性”,比如允許整數字段中的字符串,並允許在varchar(n)類型的字段中使用長於n的字符串。 實現這種驗證的最佳方法是什么? 存儲過程? 觸發? 我正在尋找適用於任何數據庫而不僅僅是我的數據庫模式的通用解決方案。

您可以添加列約束。

create table example
( 
  age integer not null check (typeof(age)='integer'),
  name text not null check (length(name) between 1 and 100),
  salary integer check (salary is null or typeof(salary)='integer')
)

我個人的經驗是,你擔心的幾乎不是問題。 如果是,問題是由於嚴重錯誤的代碼(將mothermaidenname插入年齡或某事)。 保持“不成問題”的最佳方法是擁有(並使用)有效抽象數據庫的良好數據訪問層。

在您的c# Domain Model POCO對象中進行驗證,而不是在使用DataAnnotations或甚至是此方法之類的SQLite數據庫中進行DataAnnotations

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM