【发布时间】:2012-12-21 19:49:56
【问题描述】:
我有一个组合框,它正在查看我的数据库并向我显示用户的姓名,除此之外我还想查看 dID,我发现这项任务很难实现。我有两个表,所以我假设我必须重复这个 SQL 语句。请查看此代码!
总而言之,我想要实现的只是从数据库中删除用户!会员个人信息表格table_1和会员支付金额和年份dID信息表格表格2!一个删除命令删除 table_1 和 table_2 中成员信息的一行。
欢迎任何其他方法或想法!
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace CemiyetAidatSistem
{
public partial class DeleteUser : Form
{
String conStr ="My connection string";
public UyeSil()
{
InitializeComponent();
}
SqlDataAdapter da;
DataSet ds = new DataSet();
private void UserDelete_Load(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection(conStr);
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "SELECT FullName FROM Members";
da = new SqlDataAdapter(cmd);
da.Fill(ds, "Members");
cmbUyeSil.DataSource = ds.Tables["Members"];
cmbUyeSil.DisplayMember = "DistinctID";
cmbUyeSil.ValueMember = "FullName";
}
private void button1_Click(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection(conStr);
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "DELETE FROM Members WHERE ID = '" + cmbUyeSil.SelectedValue + "'";
da = new SqlDataAdapter(cmd);
con.Open();
cmd.ExecuteNonQuery();
con.Close();
MessageBox.Show(" Member with dID \"" + cmbUyeSil.SelectedValue + "\"is deleted");
}
private void btnClose_Click(object sender, EventArgs e)
{
this.Close();
}
}
}
【问题讨论】:
-
顺便说一句,我从不删除用户或产品或任何可能与报告相关联的内容,我只是在管理员想要删除任何内容时使用
active列并将其设置为false...另外,我保存了执行的操作和entity_id的日志,因此我可以随时跟踪问题... -
您能否提供有关表格结构的信息?
-
@balexandre:你在这里提出了一个很好的观点!从系统中物理删除用户会破坏任何可追溯性的希望......
-
Melanie table_1 有 ID、dID、姓名地址、电话、电子邮件。 table_2 有 ID、dID、Year 和 Amount !!! ——
标签: c# visual-studio