1

「TIME」だけをデータベースに保存したかったのです。

しかし、私が得ているのは「TIME」に続いて「DATE」です

データベースファイルに追加した後の、プログラム内のデータベースのスクリーンショットは次のとおりです。

ここに画像の説明を入力

「時間」列に表示されている場合は、時間の後に日付が続きます。私はそれになりたくないところです(「時間」列に表示されている時間だけが欲しかったのです)。

さらに、データベースファイルの「時間」の形式を「中時間」に設定しているため、「4:56PM」になります。

データベース内の時間のスクリーンショットは次のとおりです。

ここに画像の説明を入力

時刻のみが表示されているため、データベース ファイルの時刻は正確でした。しかし、datagridviewを使用してデータベースを表示するプログラムでは、時間と日付が表示されました。

時間だけが見えるように変更するにはどうすればよいですか?

コードは次のとおりです。

    private void AddDatabase(object sender, EventArgs e)
    {
        using (OleDbConnection conn = new OleDbConnection(connectionString))
        {
            string query = "INSERT INTO [Record] ([Times]) VALUES (@Times)";

            conn.Open();

            using (OleDbCommand cmd = new OleDbCommand(query, conn))
            {
                    _cmd.Parameters.Add("@Times", System.Data.OleDb.OleDbType.DBTimeStamp);
                    _cmd.Parameters["@Times"].Value = DateTime.Now.ToShortTimeString();

                    int _numberOfRows = _cmd.ExecuteNonQuery();
                }

                if (_choice.comboBox1.Text == "English")
                {
                    System.Media.SoundPlayer _sound = new System.Media.SoundPlayer(@"C:\Windows\Media\Windows Exclamation.wav");
                    _sound.Play();

                    DialogResult _dialogResult = MessageBox.Show("Added Successfully!", "Success", MessageBoxButtons.OK);

                    if (_dialogResult == DialogResult.OK)
                    {
                        ViewDatabase(sender, e);

                        ClearTextBoxes(sender, e);
                    }
                }
            }

            conn.Close();
        }
    }

基本的に、データベースファイルの「フォーマット」をコードに使用するにはどうすればよいですか?

4

3 に答える 3

0

SQL SERVER 2008+ にはTIMEデータ型があり、時間を格納するために使用できます。.Net アプリケーションで使用するには、この記事を参照してください。ヒントとして、.Net で TimeSpan データ型を使用できます。

于 2013-09-22T05:34:47.433 に答える
0

DateTime.ToString(formatString) メソッドを使用して、必要に応じて日時をフォーマットできます。その後、結果の文字列をデータグリッドまたは必要なものに表示できます。

var dtTime =(DateTime) dataReader["Times"];
var strTime = datTime.ToString("hh:mm tt");
于 2013-09-21T09:59:06.143 に答える