รบกวนช่วยทีครับ INSERT ข้อมูลและเป็นแบบนี้อ่าครับ ExecuteNonQuery: Connection property has not been initialized รบกวนด้วยครับ จนปัญญา
Code (C#)
private void frmCourse_Load(object sender, EventArgs e)
{
string strConn;
strConn = DBConnString.strConn;
Conn = new SqlConnection();
if (Conn.State == ConnectionState.Open)
{
Conn.Close();
}
Conn.ConnectionString = strConn;
Conn.Open();
}
private void FormatDgvCourse()
{
if (dgvCourse.RowCount >= 0)
{
dgvCourse.Columns[1].Width = 20;
dgvCourse.Columns[1].Width = 100;
dgvCourse.Columns[2].Width = 80;
dgvCourse.Columns[3].Width = 150;
dgvCourse.Columns[4].Width = 150;
dgvCourse.Columns[5].Width = 250;
dgvCourse.Columns[6].Width = 50;
}
}
private void DataTable()
{
dt = new DataTable();
dt.Columns.Add("ลำดับ");
dt.Columns.Add("หมวดวิชา");
dt.Columns.Add("รหัสวิชา");
dt.Columns.Add("ชื่อวิชา (อังกฤษ)");
dt.Columns.Add("ชื่อวิชา (ไทย)");
dt.Columns.Add("รายละเอียดวิชา");
dt.Columns.Add("หน่วยกิต");
BindingSource bs = new BindingSource();
bs.DataSource = dt;
dgvCourse.DataSource = bs;
}
private void ClearData()
{
txtName.Text = "";
txtDetail.Text = "";
txtID.Text = "";
txtEng.Text = "";
txtCredit.Text = "";
cboType.Text = "";
}
private void Clear()
{
tsAdd.Enabled = true;
cboType.Enabled = false;
txtID.Enabled = false;
txtName.Enabled = false;
txtEng.Enabled = false;
txtDetail.Enabled = false;
txtCredit.Enabled = false;
tsOK.Enabled = false;
tsCancel.Enabled = true;
}
private void tsAdd_Click(object sender, EventArgs e)
{
ClearData();
DataTable();
FormatDgvCourse();
tsAdd.Enabled = true;
cboType.Enabled = true;
txtID.Enabled = true;
txtName.Enabled = true;
txtEng.Enabled = true;
txtDetail.Enabled = true;
txtCredit.Enabled = true;
tsOK.Enabled = true;
tsCancel.Enabled = true;
txtID.Focus();
}
private void tsOK_Click(object sender, EventArgs e)
{
if (MessageBox.Show("คุณต้องการบันทึกข้อมูลวิชา ใช่หรือไม่?", "คำยืนยัน", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
sb = new StringBuilder();
sb.Append("INSERT INTO Test (CourseName, CourseCode, CourseThai, CourseEng, CourseDetail, Credit) ");
sb.Append("VALUES (@CourseName, @CourseCode, @CourseThai, @CourseEng, @CourseDetail, @Credit) ");
Add = sb.ToString();
Cmd = new SqlCommand(Add, Conn);
Cmd.CommandType = CommandType.Text;
Cmd.CommandText = Add;
Cmd.Connection = Conn;
for (int i = 0; i <= dgvCourse.RowCount - 1; i++)
{
if (!dgvCourse.Rows[i].IsNewRow)
{
Cmd.Parameters.AddWithValue("CourseName", dgvCourse.Rows[i].Cells[1].Value);
Cmd.Parameters.AddWithValue("CourseCode", dgvCourse.Rows[i].Cells[2].Value);
Cmd.Parameters.AddWithValue("CourseThai", dgvCourse.Rows[i].Cells[3].Value);
Cmd.Parameters.AddWithValue("CourseEng", dgvCourse.Rows[i].Cells[4].Value);
Cmd.Parameters.AddWithValue("CourseDetail", dgvCourse.Rows[i].Cells[5].Value);
Cmd.Parameters.AddWithValue("Credit", dgvCourse.Rows[i].Cells[6].Value);
}
Cmd.ExecuteNonQuery();
Cmd.Parameters.Clear();
}
}
private void tsCancel_Click(object sender, EventArgs e)
{
ClearData();
Clear();
dgvCourse.DataSource = null;
}
private void tsHome1_Click(object sender, EventArgs e)
{
frmIndex in4 = new frmIndex();
in4.Show();
this.Hide();
}
private void btnKo_Click(object sender, EventArgs e)
{
id++;
drw = dt.NewRow();
drw["ลำดับ"] = id.ToString();
drw["หมวดวิชา"] = cboType.Text;
drw["รหัสวิชา"] = txtID.Text;
drw["ชื่อวิชา (อังกฤษ)"] = txtEng.Text;
drw["ชื่อวิชา (ไทย)"] = txtName.Text;
drw["รายละเอียดวิชา"] = txtDetail.Text;
drw["หน่วยกิต"] = txtCredit.Text;
dt.Rows.Add(drw);
if ((txtName.Text.Trim() == "") || (txtDetail.Text.Trim() == "") || (txtID.Text.Trim() == "") || (txtEng.Text.Trim() == "") || (txtCredit.Text.Trim() == ""))
{
MessageBox.Show("กรุณาป้อนข้อมูลให้ครบทุกช่อง !!!", "ผลการตรวจสอบ", MessageBoxButtons.OK, MessageBoxIcon.Warning);
txtID.Focus();
return;
}
if (cboType.Text.Trim() == "")
{
MessageBox.Show("กรุณาเลือกหมวด !!!", "ผลการตรวจสอบ", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
cboType.Focus();
return;
}
}
public string Add { get; set; }
}
}
Tag : Ms SQL Server 2008, Win (Windows App), C#
Date :
2013-03-06 05:44:24
By :
toystoryzii
View :
1091
Reply :
5
Code (C#)
string strConn;
private void frmCourse_Load(object sender, EventArgs e)
{
strConn = DBConnString.strConn;
Conn = new SqlConnection();
if (Conn.State == ConnectionState.Open)
{
Conn.Close();
}
Conn.ConnectionString = strConn;
Conn.Open();
}
ประกาศไว้บนสุดครับ string strConn;
Date :
2013-03-06 09:01:25
By :
mr.win
จะบอกดีไหมน้า
ว่าการประกาศ instant ของ connection
สิ่งสำคัญที่จะต้องทำอย่างแรกก่อนจะทำอย่างอื่นเลย คือ ป้อน connection string
Date :
2013-03-06 11:23:02
By :
ห้ามตอบเกินวันละ 2 กระทู้
บอกเลยแล้วกัน ขี้เกียจอธิบาย
Code (C#)
private void frmCourse_Load(object sender, EventArgs e)
{
string strConn;
strConn = DBConnString.strConn;
Conn = new SqlConnection();
Conn.ConnectionString = strConn;
if (Conn.State == ConnectionState.Open)
{
Conn.Close();
}
Conn.Open();
}
Date :
2013-03-06 12:01:40
By :
ห้ามตอบเกินวันละ 2 กระทู้
Load balance : Server 00