簡體   English   中英

在Visual Studio C#中使用datetimepicker的正確語法代碼是什么?

[英]What is the proper syntax code in using datetimepicker in visual studio c#?

誰能告訴我使用datetimepicker並將其直接保存到我的Microsoft sql 2005中的正確語法代碼是什么? 我正在使用Visual Studio 2008 C#。

這是我的代碼:

private void button4_Click(object sender, EventArgs e)
{
    SqlConnection conn = new SqlConnection("Data Source=MJ-PC\\SQLEXPRESS;Initial Catalog=Users;Integrated Security=True");
    SqlDataAdapter dad = new SqlDataAdapter();
    // SqlCommand cmd = new SqlCommand();
    // cmd.Connection = conn;
    dateTimePicker1.Format = DateTimePickerFormat.Short;

    string dateStr = Convert.ToString(dateTimePicker1.Text);
    dad.InsertCommand = new SqlCommand("INSERT INTO tblSchools (School_Name, Province, City, Brgy, Lot_Num, Area, Mem_Date_Rec, Cenro) VALUES(@School_Name, @Province, @City, @Brgy, @Lot_Num, @Area, @Mem_Date_Rec, @Cenro", conn);
    dad.InsertCommand.Parameters.Add("@School_Name", SqlDbType.VarChar).Value = textBox1.Text;
    dad.InsertCommand.Parameters.Add("@Province", SqlDbType.VarChar).Value = comboBox1.Text;
    dad.InsertCommand.Parameters.Add("@City", SqlDbType.VarChar).Value = textBox2.Text;
    dad.InsertCommand.Parameters.Add("@Brgy", SqlDbType.VarChar).Value = textBox4.Text;
    dad.InsertCommand.Parameters.Add("@Lot_Num", SqlDbType.VarChar).Value = textBox5.Text;
    dad.InsertCommand.Parameters.Add("@Area", SqlDbType.Int).Value = textBox6.Text;
    dad.InsertCommand.Parameters.Add("@Mem_Date_Rec", SqlDbType.DateTime).Value = dateTimePicker1.Value.Date;
    dad.InsertCommand.Parameters.Add("@Cenro", SqlDbType.VarChar).Value = textBox8.Text;    

    conn.Open();
    dad.InsertCommand.ExecuteNonQuery();
    conn.Close();
}

這里的問題是datetimepicker,在我的SQL Server中,Mem_Date_Rec是日期時間,因此,每當我嘗試運行它並將其保存在數據庫中時,dad.InsertCommand.ExecuteNonQuery(); 一直說“'@Cenro'附近的語法不正確”。

任何人都可以在這里幫助我,這將是非常有用的幫助。

我感覺像您嘗試將參數插入到dad.InsertCommand命令而不是cmd命令。

dad.InsertCommand.Parameters.Add("@Mem_Date_Rec", SqlDbType.DateTime).Value = dateTimePicker1.Value.Date;

因為您的dad.InsertCommand有一個名為@Mem_Date_Rec的參數,而不是cmd 我不知道你的cmd是什么。 這種情況下沒有用。 您不能在沒有任何參數定義的SqlCommand中添加參數值

也可以使用using語句來處理SqlConnectionSqlCommand類的;

using(SqlConnection conn = new SqlConnection(ConnectionString))
using(SqlCommand cmd = conn.CreateCommand())
{
   //
}

如果要編寫正確的語法代碼,則需要開始閱讀書籍,文章,博客,示例等。

編輯

您在SQL中缺少某些內容。 更改此:

> dad.InsertCommand = new SqlCommand("INSERT INTO tblSchools
> (School_Name, Province, City, Brgy, Lot_Num, Area, Mem_Date_Rec,
> Cenro) VALUES(@School_Name, @Province, @City, @Brgy, @Lot_Num, @Area,
> @Mem_Date_Rec, @Cenro", conn);

對此

dad.InsertCommand = new SqlCommand("INSERT INTO tblSchools (School_Name, Province, City, Brgy, Lot_Num, Area, Mem_Date_Rec, Cenro) VALUES(@School_Name, @Province, @City, @Brgy, @Lot_Num, @Area, @Mem_Date_Rec, @Cenro)", conn);

INSERT INTO表(列)值(值)

您具有:INSERT INTO表(列)值(值

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM