Sqlite 数据类型映射到 .net (CLR) 框架数据类型

发布于 2024-10-24 15:22:50 字数 77 浏览 1 评论 0原文

请任何人给我一些有关从 Sqlite 到 .net (CLR) 框架的数据类型映射的真实信息。

问候

乌迈尔

Please can any one give me some authentic information regarding data type mappings from Sqlite to .net (CLR) framework.

Regards

Umair

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

海螺姑娘 2024-10-31 15:22:50

SQLite(对于数据库而言)有点奇怪,因为它使用动态类型系统。类型与数据相关,而不是与列相关。

来自 SQLite 网站:

SQLite支持的数据类型有:

<前><代码>NULL。该值为 NULL 值。

整数。该值为有符号整数,存储为 1、2、3、4、6 或 8

字节数取决于大小
值。

<前><代码>真实。该值为浮点值,存储为 8 字节 IEEE

浮点数。

<前><代码>文本。该值是一个文本字符串,使用数据库编码存储

(UTF-8、UTF-16BE 或 UTF-16LE)。

<前><代码>BLOB。该值是一团数据,完全按照输入时的方式存储。


甚至日期也存储为以下类型之一:

1.2 日期和时间数据类型

SQLite 没有存储类
留出空间用于存储日期和/或
次。相反,内置的 Date And
SQLite 的时间函数能够
将日期和时间存储为 TEXT,
REAL 或 INTEGER 值:

TEXT 作为 ISO8601 字符串(“YYYY-MM-DD HH:MM:SS.SSS”)。
REAL 作为儒略日数,自格林威治中午以来的天数

根据公元前 4714 年 11 月 24 日
公历
INTEGER 作为 Unix 时间,自 1970-01-01 00:00:00 以来的秒数
世界标准时间。

应用程序可以选择存储日期
和任何这些格式的时间和
使用以下方式在格式之间自由转换
内置日期和时间函数。


因此,SQLite 将数据与这 5 种类型之一(包括 NULL)相关联,并且应用程序负责将数据解释为更具体的内容(例如,对于 .NET,TEXT 为 DateTime)。

SQLite is kind of odd (for a database) in that it uses a dynamic type system. The type is associated with the data, not the column.

From SQLite website:

Data types supported by SQLite are:

NULL. The value is a NULL value.

INTEGER. The value is a signed integer, stored in 1, 2, 3, 4, 6, or 8

bytes depending on the magnitude of
the value.

REAL. The value is a floating point value, stored as an 8-byte IEEE

floating point number.

TEXT. The value is a text string, stored using the database encoding

(UTF-8, UTF-16BE or UTF-16LE).

BLOB. The value is a blob of data, stored exactly as it was input.

Even dates are stored as one of those types:

1.2 Date and Time Datatype

SQLite does not have a storage class
set aside for storing dates and/or
times. Instead, the built-in Date And
Time Functions of SQLite are capable
of storing dates and times as TEXT,
REAL, or INTEGER values:

TEXT as ISO8601 strings ("YYYY-MM-DD HH:MM:SS.SSS").
REAL as Julian day numbers, the number of days since noon in Greenwich

on November 24, 4714 B.C. according to
the proleptic Gregorian calendar.
INTEGER as Unix Time, the number of seconds since 1970-01-01 00:00:00
UTC.

Applications can chose to store dates
and times in any of these formats and
freely convert between formats using
the built-in date and time functions.


So SQLite associates data with one of those 5 types (including NULL) and the application is responsible for interpreting the data as something more specific (e.g. TEXT to DateTime, in the case of .NET).

惯饮孤独 2024-10-31 15:22:50

不确定你的意思。

不存在真正的映射。 SQLLite 本身是一种独立的数据库技术,并且有 .NET 包装器(或多个包装器)围绕它。最著名的一个是: http://sqlite.phxsoftware.com/

如果您查看此页面(其SQL Lite 官方网站):
http://www.sqlite.org/datatype3.html

您可以看到中的所有数据类型SQL Lite 在那里。现在有些是非常明显的,例如 char、int 等。您不确定的,您可以更新您的问题并将其发布到?

华泰

Not sure what you entirely mean.

There are no real mappings as such. SQLLite is a separate DB technology on its own and there is .NET wrapper (or wrappers) around it. The most famous one is : http://sqlite.phxsoftware.com/

If you look at this page (Its the official SQL Lite website):
http://www.sqlite.org/datatype3.html

You can see all the Data Types in SQL Lite in there. Now some are pretty obvious like char, int, etc. The ones you're not sure of, you can update your question and post them in?

HTH

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文