Я хочу получить системную дату и время, используя мою программу C#
, и передать ее в базу данных. Я использовал тип данных DateTime в таблице SQL Server
.
Я использовал DateTime dt = DateTime.Now;
метод, чтобы получить системную дату и время. но я передал его в базу данных, я получил следующую ошибку.
Строка или двоичные данные будут усечены. Заявление было
прекращено.
Как решить эту ошибку.
Структура таблицы -
create table Candidates_ElecCenter(
Cand_ID varchar(10) primary key,
Party_ID varchar(3),
Name varchar(100),
NIC varchar(50),
DistrictID varchar(3) ,
seat varchar(50) ,
Total_Votes int,
year datetime default DATENAME(year, GETDATE()) ,
Candidate_Type int ,
CONSTRAINT fk_CandDistrict FOREIGN KEY (DistrictID) REFERENCES District(District_ID),
CONSTRAINT fk_Cand_year_Election FOREIGN KEY (year) REFERENCES Election(year),
CONSTRAINT fk_Non_Ind_Party_ID_cand FOREIGN KEY (Party_ID) REFERENCES NonIndependent_Poll_Party(Party_ID),
CONSTRAINT fk_Ind_Party_ID_cand FOREIGN KEY (Party_ID) REFERENCES Independent_Poll_Party(Party_ID),
);
Функция:
internal bool InsertDetails(string p, string p_2, string p_3, string p_4, string p_5, string p_6, int sts)
{
bool status = false;
if (conn.State.ToString() == "Closed")
{
conn.Open();
}
SqlCommand newCmd = conn.CreateCommand();
newCmd.Connection = conn;
newCmd.CommandType = CommandType.Text;
DateTime now = DateTime.Now;
newCmd.CommandText = "INSERT INTO Candidates_ElecCenter(Cand_ID,Party_ID,Name,NIC,DistrictID,seat,year,Candidate_Type) VALUES ('" + p + "','" + p_2 + "','" + p_3 + "' ,'" + p_4 + "', '" + p_5 + "', '" + p_6 + "', '" + now + "','" + sts + "')";
newCmd.ExecuteNonQuery();
conn.Close();
status = true;
return status;
}