Как я могу настроить MSSQLLocal по умолчанию формат даты и времени - PullRequest
0 голосов
/ 06 февраля 2020

Я пишу программу для взаимодействия с MSSQLLocal DB, используя C# через winforms, но я нахожу проблему со стандартным значением даты и времени, это не формат даты и времени, который мы используем в моем счетчике, мне интересно, как я мог через Sql client - sql default C# классы. Можно ли изменить формат даты по умолчанию для базы данных или для всех существующих баз данных?

. Это может позволить мне отформатировать дату и время https://docs.microsoft.com/en-us/sql/t-sql/statements/set-dateformat-transact-sql?view=sql-server-ver15

но это не меняет формат даты по умолчанию, как я могу программно изменить формат даты и времени по умолчанию для БД?

пример кода

var connectionstr = $@"Data Source=(localdb)\MSSQLLocalDB;Initial Catalog={DBname};Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False";
                var con = new SqlConnection(connectionstr);
                con.Open();

                string changeDate = $@"SET DATEFORMAT dmy;";
                SqlCommand command = new SqlCommand(changeDate , con);
                var res = command.ExecuteNonQuery();
                SqlCommand cmd = new SqlCommand(InsertCmd, con);

                SqlDataAdapter adapter = new SqlDataAdapter() { InsertCommand = cmd };

                adapter.InsertCommand.ExecuteNonQuery();


                adapter.Dispose();
                con.Close();
                con.Dispose();
                cmd.Dispose();
                command.Dispose();

Ответы [ 2 ]

0 голосов
/ 14 февраля 2020

Получается перед добавлением нового значения в строку, которую вам нужно будет включить в строку CAST (01/01/2020) как формат даты

0 голосов
/ 06 февраля 2020

Объект datetime в базе данных - это просто datetime, данные могут быть установлены в определенный формат при отображении в WinForm, если вам это нужно. Например, если я хотел, чтобы дата и время отображались в формате Великобритании:

    DateTime.Now.ToString("dd/MM/yyyy")

Формат даты и времени

...