2012-08-02 49 views
0

我在我的Android應用程序中使用google-api-services-fusiontables-v1-rev1-1.7.2-beta。 我使用插入原始SQL API service.query()。SQL( 「INSERT INTO」 + TABLEID +」(日期,小時,PULS,SYS,DIA)VALUES(很長很長,INT,INT,INT),並有一些問題。DATETIME的Fusion Table設置格式

  1. 的getDateTime()的類型是長的並且在毫秒給出。然而,在融合表示出1969年12月31日的所有時間的數據和時針是所有的時間下午6點。這是一個已知的問題?

  2. 有沒有一種方法來設置DATETIME從我的應用程序的格式,我還沒有看到一個JSON場或API來設置格式...?

謝謝!

+0

Hello Fusion Table團隊。有人可以幫助解決這些問題嗎? – user1539394 2012-08-03 16:08:40

回答

0

你能澄清一下你使用的getDateTime()方法嗎?您能否給出一段代碼片段來展示您如何調用API,以及您在哪裏看到31 DEC,1969 6PM?

此外,目前您無法設置日期格式。隨意星級以下功能要求:http://code.google.com/p/fusion-tables/issues/detail?id=727&q=Type%3DFeature_Request%20format%20date&colspec=ID%20Type%20Status%20Summary%20Stars%20Component

+0

我們對getDateTime()使用System.currentTimeMillis()(http://developer.android.com/reference/java/lang/System.html)。當我們在FusionTable上檢查任何格式的日期時,我們會得到1969年12月31日下午6點的錯誤日期。 – user1539394 2012-08-07 16:48:16

+0

你能否包含一些代碼來顯示你如何插入日期以及你如何得到錯誤的日期? – Warren 2012-08-08 17:36:21

+0

下面是我用於將原始插入表格的內容。 service.query()。SQL( 「INSERT INTO」 + TABLEID + 「(日,時,WEIGHT)值」 + 「(」 + System.currentTimeMillis的()+ 「」 + System.currentTimeMillis的()+」, 「+ oAuth2.getWeight()+」)「); DATE和HOUR列來自DATETIME類型。現在,當從我的GDrive在線上表並將coulmns的格式更改爲一小時或日期格式(例如2012年10月10日)時,日期顯示爲1969年12月31日。 – user1539394 2012-08-13 13:40:22

0

1969年12月31日下午6時在中部標準時間Unix的EPOC。

融合表不承認System.currentTimeMillis的()的返回日期的UNIX紀元長值。它將它們識別爲數字。然而,Fusion不會自動識別一組文本格式。您可以使用日期格式下更改列對話框中的瀏覽器界面查看支持哪些格式。例如,我使用格式「2008-12-25 10:30:45」。要將Java中的日期格式化爲某種文本格式,可以使用SimpleDateFormat。只需將字符串版本的日期插入到SQL中即可。

沒有辦法設置從API,目前只能從谷歌驅動器接口做了列的格式選項。

記住融合表處於實驗階段,可能會在將來停止。另外要注意的是,除了純粹的非盈利目的之外,您並未將Fusion Tables用於任何其他目的,因爲它實際上僅用於慈善和公共服務用例。