1

この背後にある概念を理解したいと思います。

C#でデータベースを作っています。今、私は日付と時刻の代わりに日付だけを持ちたいと思っています。

そこで、SQL クエリ ペインで次のコマンドを実行しました。

SELECT CONVERT(varchar, deal_start_date, 101) AS 'deal_start_date' FROM client

目的の結果が得られますが、データは読み取り専用になるため、編集できません。

結果はこのスナップごとです

また、永続的に留まるものではありません。つまり、もう一度クリックするshow table dataと、日時形式が表示されます。

セルが読み取り専用になる理由と、UI のみで変更を永続的に保持する方法を教えてもらえますか??

どうもありがとう。

4

2 に答える 2

2

読み取り専用の部分についての私の推測では、元の値を変換しているため、データベースの列へのリンクが失われます。計算列を編集できないのと同じように(たとえば、として定義されているクエリから列にどのように書き込むか)A+B as 'C'

GUIでこれを表示しているのは、どのタイプのコンポーネントですか?たぶん、クエリをそのままにしてSELECT deal_start_date FROM client、コンポーネントから時間部分を除外することができますか?

または、アプリケーションの他の場所で時間を使用しない場合は、データベースの列をからに変更しdatetimeますdate

于 2013-03-05T12:21:21.183 に答える
0

完璧な答えは得られませんでしたが、別の方法を見つけました。MS SQLデータベースでdatetimeデータ型を試していました。varchar(12) に変更すると、目的の結果が得られました。つまり、日付形式です。( Øyvind Knobloch-Bråthenによる洞察に感謝します)

varchar のサイズ 12 では時間の部分が切り捨てられるため、これに従うのは実際には不適切です。(varchar のサイズを大きくすると、時間の部分が表示されます)しかし、それは私の目的を果たしました。

しかし、もしあれば、私はまだ正しい答えを待っています。

于 2013-03-05T12:58:31.720 に答える