0

C# でクエリを使用しています。データベースからデータを印刷しています。

その列数は約 200 で、最初の列の型はTIMESTAMPです。

その他のタイプは印刷に問題ありません。TIMESTAMP のみが行います。

誰かが私が得るために使用できると言っTIMESTAMPTO_CHAR(COLUMN_NAME, 'YYYYHHDD')

データベースのすべてを表示したい。しかし、必要に応じて、すべての列を入力する必要があります。このようにして、新しく作成された列は表示されません。

このようなクエリを使用したいのですが、うまくいきません:

SELECT TO_CHAR(TIME, 'HHMMSS'), * FROM DATAS

このクエリで私を助けてください。

4

2 に答える 2

0

以下は私にとってはうまくいきます:

SELECT CONVERT(数値(20,0), スタンプ + 0) FROM ...

これは、「スタンプ」がタイムスタンプ列です。

于 2012-06-15T07:31:55.817 に答える
0

SQL Server を使用していると仮定すると、タイムスタンプ値をバイト配列として読み取り、文字列に変換する必要があります。MSDNのSQL Server Data Type Mappingsは、Timestamp が Byte[] にマップされ、GetSqlBinary または GetBytes メソッドによってアクセスできることを示しています。

このマッピングは、timestampが実際には、行が変更されるたびに自動的に変更される行のバージョン番号であることも示しています。時間とは関係ありません。これは、増加する 8 バイトの数値です。この数値はエンド ユーザーにとっては意味がなく、おそらくどこに表示しても意味がありません。

それでも表示したい場合は、BitConverter.ToInt64メソッドを使用して、タイムスタンプ バイトを Int64 型に変換できます。

于 2012-06-15T07:33:43.697 に答える