C#
プログラムを使用してシステムの日付と時刻を取得し、データベースに渡したいと思っています。私はSQL Server
テーブルで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;
}
どうやってデータベースに渡しましたか?いくつかのコードを教えてください。 –
どのようにクエリを構成していますか? –
値を渡す内容を表示できますか? – kaj