• <legend id='S2evh'><style id='S2evh'><dir id='S2evh'><q id='S2evh'></q></dir></style></legend>

          <bdo id='S2evh'></bdo><ul id='S2evh'></ul>

        <small id='S2evh'></small><noframes id='S2evh'>

        <tfoot id='S2evh'></tfoot>
      1. <i id='S2evh'><tr id='S2evh'><dt id='S2evh'><q id='S2evh'><span id='S2evh'><b id='S2evh'><form id='S2evh'><ins id='S2evh'></ins><ul id='S2evh'></ul><sub id='S2evh'></sub></form><legend id='S2evh'></legend><bdo id='S2evh'><pre id='S2evh'><center id='S2evh'></center></pre></bdo></b><th id='S2evh'></th></span></q></dt></tr></i><div id='S2evh'><tfoot id='S2evh'></tfoot><dl id='S2evh'><fieldset id='S2evh'></fieldset></dl></div>
      2. 如何从sqlite读取日期时间作为日期时间而不是Python中的字符串?

        How to read datetime back from sqlite as a datetime instead of string in Python?(如何从sqlite读取日期时间作为日期时间而不是Python中的字符串?)
        <tfoot id='q57X5'></tfoot>

          <i id='q57X5'><tr id='q57X5'><dt id='q57X5'><q id='q57X5'><span id='q57X5'><b id='q57X5'><form id='q57X5'><ins id='q57X5'></ins><ul id='q57X5'></ul><sub id='q57X5'></sub></form><legend id='q57X5'></legend><bdo id='q57X5'><pre id='q57X5'><center id='q57X5'></center></pre></bdo></b><th id='q57X5'></th></span></q></dt></tr></i><div id='q57X5'><tfoot id='q57X5'></tfoot><dl id='q57X5'><fieldset id='q57X5'></fieldset></dl></div>

              <tbody id='q57X5'></tbody>
          • <small id='q57X5'></small><noframes id='q57X5'>

            • <legend id='q57X5'><style id='q57X5'><dir id='q57X5'><q id='q57X5'></q></dir></style></legend>
                <bdo id='q57X5'></bdo><ul id='q57X5'></ul>
                1. 本文介绍了如何从sqlite读取日期时间作为日期时间而不是Python中的字符串?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                  问题描述

                  我使用 Python 2.6.4 中的 sqlite3 模块在 SQLite 数据库中存储日期时间.插入它非常容易,因为sqlite 会自动将日期转换为字符串.问题是,在读取它时它会作为字符串返回,但我需要重建原始的 datetime 对象.我该怎么做?

                  解决方案

                  如果你用时间戳类型声明你的列,你就是在三叶草中:

                  <预><代码>>>>db = sqlite3.connect(':memory:',detect_types=sqlite3.PARSE_DECLTYPES)>>>c = db.cursor()>>>c.execute('create table foo (bar integer, baz timestamp)')<sqlite3.Cursor 对象在 0x40fc50>>>>c.execute('insert into foo values(?, ?)', (23, datetime.datetime.now()))<sqlite3.Cursor 对象在 0x40fc50>>>>c.execute('select * from foo')<sqlite3.Cursor 对象在 0x40fc50>>>>c.fetchall()[(23, datetime.datetime(2009, 12, 1, 19, 31, 1, 40113))]

                  看到了吗?int(对于声明为整数的列)和 datetime(对于声明为时间戳的列)在往返过程中都保留下来,并且类型完好无损.

                  I'm using the sqlite3 module in Python 2.6.4 to store a datetime in a SQLite database. Inserting it is very easy, because sqlite automatically converts the date to a string. The problem is, when reading it it comes back as a string, but I need to reconstruct the original datetime object. How do I do this?

                  解决方案

                  If you declare your column with a type of timestamp, you're in clover:

                  >>> db = sqlite3.connect(':memory:', detect_types=sqlite3.PARSE_DECLTYPES)
                  >>> c = db.cursor()
                  >>> c.execute('create table foo (bar integer, baz timestamp)')
                  <sqlite3.Cursor object at 0x40fc50>
                  >>> c.execute('insert into foo values(?, ?)', (23, datetime.datetime.now()))
                  <sqlite3.Cursor object at 0x40fc50>
                  >>> c.execute('select * from foo')
                  <sqlite3.Cursor object at 0x40fc50>
                  >>> c.fetchall()
                  [(23, datetime.datetime(2009, 12, 1, 19, 31, 1, 40113))]
                  

                  See? both int (for a column declared integer) and datetime (for a column declared timestamp) survive the round-trip with the type intact.

                  这篇关于如何从sqlite读取日期时间作为日期时间而不是Python中的字符串?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                  本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

                  相关文档推荐

                  SQLite loop statements?(SQLite 循环语句?)
                  Can I use parameters for the table name in sqlite3?(我可以在 sqlite3 中使用表名的参数吗?)
                  SQL - Inserting a row and returning primary key(SQL - 插入一行并返回主键)
                  How to get the number of rows of the selected result from sqlite3?(如何从sqlite3中获取所选结果的行数?)
                  Python : How to insert a dictionary to a sqlite database?(Python:如何将字典插入到 sqlite 数据库中?)
                  What are the advantages of VistaDB(VistaDB有什么优势)
                2. <legend id='Bo0p7'><style id='Bo0p7'><dir id='Bo0p7'><q id='Bo0p7'></q></dir></style></legend>
                    <tbody id='Bo0p7'></tbody>

                      <bdo id='Bo0p7'></bdo><ul id='Bo0p7'></ul>

                      <small id='Bo0p7'></small><noframes id='Bo0p7'>

                      <i id='Bo0p7'><tr id='Bo0p7'><dt id='Bo0p7'><q id='Bo0p7'><span id='Bo0p7'><b id='Bo0p7'><form id='Bo0p7'><ins id='Bo0p7'></ins><ul id='Bo0p7'></ul><sub id='Bo0p7'></sub></form><legend id='Bo0p7'></legend><bdo id='Bo0p7'><pre id='Bo0p7'><center id='Bo0p7'></center></pre></bdo></b><th id='Bo0p7'></th></span></q></dt></tr></i><div id='Bo0p7'><tfoot id='Bo0p7'></tfoot><dl id='Bo0p7'><fieldset id='Bo0p7'></fieldset></dl></div>
                    • <tfoot id='Bo0p7'></tfoot>