c# sql 多个checkbox (求教 急)
求教,c# 制造winform,
1. (重点解决)想checkbox打勾时,sql table fdOrder 增加信息
1. 例如:
顾客1(房间001)打勾checkbox:Ba(3Qty),Bb(2Qty),La(5Qty) --》 当摁Confirm,sql 数据增加三行
每行数据如下:
fdSeqId, fdRmId, fdCusId, fdDate, fdItem1,fdItem2,fdItem2,fdPrice,fdQty
1 | 001(form要求输入)| 1| datepick(form要求输入)| 51|01|20|3
2 | 001(form要求输入)| 1| datepick(form要求输入)| 51|02|15|2
3 | 001(form要求输入)| 1| datepick(form要求输入)| 52|01|35|5
如此类推。。。
2. 如何从sql查找fdCusId(由顾客输入房间号(tbRm) 和 日期(datepick)得出顾客号码 到时 到时用来存入tfdOrder)
sql table 如下:
tFdOrder:
fdSeqId | fdRmId | fdCusId | fdDate | fdItem1 | fdItem2 | fdItem2 | fdPrice | fdQty
tCustomer:
cusSeqId | cusName1 | cusName2 | cusPhone | cusEmail1 | cusEmail2
tRoom:
rmId | rmType | rmResSrt | rmResEnd | rmChkStr | rmChkEnd
tUsageRm:
usgSeqId | usgRmId | usgResSrt | rmResEnd | rmChkStr | rmChkEnd |...| usgCusId
[code=csharp]
// MakeOrder.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;
namespace WindowsFormsApplication1
{
public partial class MakeOrder : Form
{
SqlConnection con = new SqlConnection("Data Source=SONY\\SQLEXPRESS;Initial Catalog=HoltelMan;Integrated Security=True");
public MakeOrder()
{
InitializeComponent();
}
private void MakeOrder_Load(object sender, EventArgs e)
{
groupBox1.Enabled = false;
}
private void button3_Click(object sender, EventArgs e)
{
if (tbRm.Text == "") MessageBox.Show("Please Enter Room Number", "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
else { groupBox1.Enabled = true; tbTotal.Enabled = true; }
}
String datepick;
private void dateTimePicker1_ValueChanged(object sender, EventArgs e)
{
int diff = DateTime.Compare(dateTimePicker1.Value, DateTime.Now);
// MessageBox.Show(DateTime.Now.ToString()+ dateCheckIn.Value.ToString());
if (string.Compare(dateTimePicker1.Value.ToString().Substring(0, 10), DateTime.Now.ToString().Substring(0, 10)) < 0)
{
dateTimePicker1.Value = DateTime.Now;
// MessageBox.Show("Please Select valide Date!!! " + diff.ToString(), " ", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
else
{
datepick = dateTimePicker1.Value.ToString().Substring(6, 4) + dateTimePicker1.Value.ToString().Substring(0, 2)
+ dateTimePicker1.Value.ToString().Substring(3, 2);
}
dateTimePicker1.Focus();
// MessageBox.Show("din = " + dIn);
}
private void btnConfirm_Click(object sender, EventArgs e)
{
double price = 0.0;
int breakfast = 51;
int lunch = 52;
int dinner = 53;
string breakfastString = breakfast.ToString();
string lunchString = lunch.ToString();
string dinnerString = dinner.ToString();
if (chkBa.Checked) price += Int32.Parse(chkBa.Text) * double.Parse(numBa.Value.ToString());
if (chkBb.Checked) price += Int32.Parse(chkBb.Text) * double.Parse(numBb.Value.ToString());
if (chkLa.Checked) price += Int32.Parse(chkLa.Text) * double.Parse(numLa.Value.ToString());
if (chkLb.Checked) price += Int32.Parse(chkLb.Text) * double.Parse(numLb.Value.ToString());
if (chkDa.Checked) price += Int32.Parse(chkDa.Text) * double.Parse(numDa.Value.ToString());
if (chkDb.Checked) price += Int32.Parse(chkDb.Text) * double.Parse(numDb.Value.ToString());
MessageBox.Show(price.ToString());
tbTotal.Text = price.ToString();
MessageBox.Show("Confirm Food Order?", "Confirm", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning);
con.Open();
int maxId = 0;
string strSQL = "SELECT MAX(fdSeqId) FROM tFdOrder";
SqlCommand cmd1 = new SqlCommand(strSQL, con);
SqlDataReader MyRead1 = cmd1.ExecuteReader();
if (MyRead1.Read())
{
maxId = (int)MyRead1[0] + 1;
}
MyRead1.Close();
strSQL = "INSERT INTO tFdOrder ( fdSeqId, fdRmId, fdCusId, fdDate, fdItem1, fdItem2,fdPrice,fdQty) VALUES ('"
+ maxId.ToString() + "','" + tbRm.Text.ToString() + "','" + tbCusId.Text.ToString() + "','" + datepick
+ "'," + 51 + "," + 01 + ",'" + s + "','" + numBa + "');";
SqlCommand cmd2 = new SqlCommand(strSQL, con);
SqlDataReader MyRead2 = cmd2.ExecuteReader();
if (MyRead2.RecordsAffected < 1)
{
MessageBox.Show("INSERT tFdOrder Failed!!!", " ", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
else
{
// MessageBox.Show("INSERT tCustomer Succeeded!!!", "", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
con.Close();
}
private void textBox2_TextChanged(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
this.Visible = false;
Form hotelMain = new hotelMain();
hotelMain.ShowDialog();
}
private void button2_Click(object sender, EventArgs e)
{
this.Visible = false;
Form SubMenu = new SubMenu();
SubMenu.ShowDialog();
}
}
}
/*
con.Open();
int maxId = 0;
string strSQL = "SELECT MAX(fdSeqId) FROM tFdOrder";
SqlCommand cmd1 = new SqlCommand(strSQL, con);
SqlDataReader MyRead1 = cmd1.ExecuteReader();
if (MyRead1.Read())
{
maxId = (int)MyRead1[0] + 1;
}
MyRead1.Close();
strSQL = "INSERT INTO tFdOrder ( fdSeqId, fdRmId, fdCusId, fdDate, fdItem1, fdItem2,fdPrice,fdQty) VALUES ('"
+ maxId.ToString() + "','" + tbRm.Text.ToString() + "','" + tbCusId.Text.ToString() + "','" + datepick
+ "'," + 51 + "," + 01 + ",'" + price.ToString() + "','" + numBa + "');";
SqlCommand cmd2 = new SqlCommand(strSQL, con);
SqlDataReader MyRead2 = cmd2.ExecuteReader();
if (MyRead2.RecordsAffected < 1)
{
MessageBox.Show("INSERT tFdOrder Failed!!!", " ", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
else
{
// MessageBox.Show("INSERT tCustomer Succeeded!!!", "", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
con.Close();
*/
1. (重点解决)想checkbox打勾时,sql table fdOrder 增加信息
1. 例如:
顾客1(房间001)打勾checkbox:Ba(3Qty),Bb(2Qty),La(5Qty) --》 当摁Confirm,sql 数据增加三行
每行数据如下:
fdSeqId, fdRmId, fdCusId, fdDate, fdItem1,fdItem2,fdItem2,fdPrice,fdQty
1 | 001(form要求输入)| 1| datepick(form要求输入)| 51|01|20|3
2 | 001(form要求输入)| 1| datepick(form要求输入)| 51|02|15|2
3 | 001(form要求输入)| 1| datepick(form要求输入)| 52|01|35|5
如此类推。。。
2. 如何从sql查找fdCusId(由顾客输入房间号(tbRm) 和 日期(datepick)得出顾客号码 到时 到时用来存入tfdOrder)
sql table 如下:
tFdOrder:
fdSeqId | fdRmId | fdCusId | fdDate | fdItem1 | fdItem2 | fdItem2 | fdPrice | fdQty
tCustomer:
cusSeqId | cusName1 | cusName2 | cusPhone | cusEmail1 | cusEmail2
tRoom:
rmId | rmType | rmResSrt | rmResEnd | rmChkStr | rmChkEnd
tUsageRm:
usgSeqId | usgRmId | usgResSrt | rmResEnd | rmChkStr | rmChkEnd |...| usgCusId
[code=csharp]
// MakeOrder.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;
namespace WindowsFormsApplication1
{
public partial class MakeOrder : Form
{
SqlConnection con = new SqlConnection("Data Source=SONY\\SQLEXPRESS;Initial Catalog=HoltelMan;Integrated Security=True");
public MakeOrder()
{
InitializeComponent();
}
private void MakeOrder_Load(object sender, EventArgs e)
{
groupBox1.Enabled = false;
}
private void button3_Click(object sender, EventArgs e)
{
if (tbRm.Text == "") MessageBox.Show("Please Enter Room Number", "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
else { groupBox1.Enabled = true; tbTotal.Enabled = true; }
}
String datepick;
private void dateTimePicker1_ValueChanged(object sender, EventArgs e)
{
int diff = DateTime.Compare(dateTimePicker1.Value, DateTime.Now);
// MessageBox.Show(DateTime.Now.ToString()+ dateCheckIn.Value.ToString());
if (string.Compare(dateTimePicker1.Value.ToString().Substring(0, 10), DateTime.Now.ToString().Substring(0, 10)) < 0)
{
dateTimePicker1.Value = DateTime.Now;
// MessageBox.Show("Please Select valide Date!!! " + diff.ToString(), " ", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
else
{
datepick = dateTimePicker1.Value.ToString().Substring(6, 4) + dateTimePicker1.Value.ToString().Substring(0, 2)
+ dateTimePicker1.Value.ToString().Substring(3, 2);
}
dateTimePicker1.Focus();
// MessageBox.Show("din = " + dIn);
}
private void btnConfirm_Click(object sender, EventArgs e)
{
double price = 0.0;
int breakfast = 51;
int lunch = 52;
int dinner = 53;
string breakfastString = breakfast.ToString();
string lunchString = lunch.ToString();
string dinnerString = dinner.ToString();
if (chkBa.Checked) price += Int32.Parse(chkBa.Text) * double.Parse(numBa.Value.ToString());
if (chkBb.Checked) price += Int32.Parse(chkBb.Text) * double.Parse(numBb.Value.ToString());
if (chkLa.Checked) price += Int32.Parse(chkLa.Text) * double.Parse(numLa.Value.ToString());
if (chkLb.Checked) price += Int32.Parse(chkLb.Text) * double.Parse(numLb.Value.ToString());
if (chkDa.Checked) price += Int32.Parse(chkDa.Text) * double.Parse(numDa.Value.ToString());
if (chkDb.Checked) price += Int32.Parse(chkDb.Text) * double.Parse(numDb.Value.ToString());
MessageBox.Show(price.ToString());
tbTotal.Text = price.ToString();
MessageBox.Show("Confirm Food Order?", "Confirm", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning);
con.Open();
int maxId = 0;
string strSQL = "SELECT MAX(fdSeqId) FROM tFdOrder";
SqlCommand cmd1 = new SqlCommand(strSQL, con);
SqlDataReader MyRead1 = cmd1.ExecuteReader();
if (MyRead1.Read())
{
maxId = (int)MyRead1[0] + 1;
}
MyRead1.Close();
strSQL = "INSERT INTO tFdOrder ( fdSeqId, fdRmId, fdCusId, fdDate, fdItem1, fdItem2,fdPrice,fdQty) VALUES ('"
+ maxId.ToString() + "','" + tbRm.Text.ToString() + "','" + tbCusId.Text.ToString() + "','" + datepick
+ "'," + 51 + "," + 01 + ",'" + s + "','" + numBa + "');";
SqlCommand cmd2 = new SqlCommand(strSQL, con);
SqlDataReader MyRead2 = cmd2.ExecuteReader();
if (MyRead2.RecordsAffected < 1)
{
MessageBox.Show("INSERT tFdOrder Failed!!!", " ", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
else
{
// MessageBox.Show("INSERT tCustomer Succeeded!!!", "", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
con.Close();
}
private void textBox2_TextChanged(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
this.Visible = false;
Form hotelMain = new hotelMain();
hotelMain.ShowDialog();
}
private void button2_Click(object sender, EventArgs e)
{
this.Visible = false;
Form SubMenu = new SubMenu();
SubMenu.ShowDialog();
}
}
}
/*
con.Open();
int maxId = 0;
string strSQL = "SELECT MAX(fdSeqId) FROM tFdOrder";
SqlCommand cmd1 = new SqlCommand(strSQL, con);
SqlDataReader MyRead1 = cmd1.ExecuteReader();
if (MyRead1.Read())
{
maxId = (int)MyRead1[0] + 1;
}
MyRead1.Close();
strSQL = "INSERT INTO tFdOrder ( fdSeqId, fdRmId, fdCusId, fdDate, fdItem1, fdItem2,fdPrice,fdQty) VALUES ('"
+ maxId.ToString() + "','" + tbRm.Text.ToString() + "','" + tbCusId.Text.ToString() + "','" + datepick
+ "'," + 51 + "," + 01 + ",'" + price.ToString() + "','" + numBa + "');";
SqlCommand cmd2 = new SqlCommand(strSQL, con);
SqlDataReader MyRead2 = cmd2.ExecuteReader();
if (MyRead2.RecordsAffected < 1)
{
MessageBox.Show("INSERT tFdOrder Failed!!!", " ", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
else
{
// MessageBox.Show("INSERT tCustomer Succeeded!!!", "", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
con.Close();
*/
...全文
相关推荐
C# GridView+CheckBox删除记录
C# GridView CheckBox 實測可行
C# CheckBox 后台获取要删除的id值.pdf
protected void btnDel_Click(object sender, System.EventArgs e) { ArrayList list = new ArrayList(); CheckBox chk; foreach(DataGridItem it in DataGrid1.Items) { chk = (CheckBox)it.Cells[0].Controls[1]; if(chk.Checked) list.Add(it.Cells[1].Text); }
asp.net(C#)DropDownList控件里CheckBox全选、反选和删除
asp.net(C#),DataList控件里嵌入CheckBox,实现全选、反选以及删除功能。
CheckBox全选并删除
CheckBox全选与否,及删除问题
C#编写登录窗体,连接SQL,有登录、注册功能……
本程序简洁明了地实现了使用C#设计登录窗体,并连接到 SQL数据库,还有注册用户名和密码的功能……希望大家多多指教。


