C# 如何在windows窗体中使用新行ID填充文本框
我正在创建一个windows窗体,目前正在创建“创建成员”窗体 现在我想向输入数据的用户显示新成员ID是什么。所以我想尝试在文本框中显示新行ID。因此,如果我们以下面的示例为例,当表单加载时,新成员ID应该显示在文本框中 我在下面尝试过,但从sqlCommand中获取结果有困难。或者也许我做这件事的方式不对哈 有人能看到我如何在加载时应用id吗C# 如何在windows窗体中使用新行ID填充文本框,c#,sql,winforms,C#,Sql,Winforms,我正在创建一个windows窗体,目前正在创建“创建成员”窗体 现在我想向输入数据的用户显示新成员ID是什么。所以我想尝试在文本框中显示新行ID。因此,如果我们以下面的示例为例,当表单加载时,新成员ID应该显示在文本框中 我在下面尝试过,但从sqlCommand中获取结果有困难。或者也许我做这件事的方式不对哈 有人能看到我如何在加载时应用id吗 private void frmAddMember_Load(object sender, EventArgs e) {
private void frmAddMember_Load(object sender, EventArgs e)
{
using (var connection = new SqlConnection(Properties.Settings.Default.BioEngineeringDB))
{
connection.Open();
using (var cmd = new SqlCommand("SELECT * FROM Users WHERE UserID=(SELECT MAX(UserID) FROM Users", connection))
{
//cmd.Parameters.Add("@MYVALUE", SqlDbType.VarChar).Value = comboBox1.Text;
SqlDataReader re = cmd.ExecuteReader();
if (re.Read())
{
txtMemberId.Text = // result from the SQLCommand but i dont know how to get it
您可以通过使用列名称索引
DataReader
来访问当前行单元格,如txtMemberId.Text=thisReader[“UserID”]//在这里,您应该执行增量
。但老实说,以selectmax(Id)+1
的方式生成Id
是很奇怪的,GUIDs
nadAutoinc integer
在我们的时代更常用
您的MAX+1
应该如下所示:
private void frmAddMember_Load(object sender, EventArgs e)
{
using (var connection = new SqlConnection(Properties.Settings.Default.BioEngineeringDB))
{
connection.Open();
using (var cmd = new SqlCommand("SELECT (COALESCE(MAX(UserID), 0) + 1) as UserID FROM Users", connection))
{
SqlDataReader re = cmd.ExecuteReader();
if (re.Read())
{
txtMemberId.Text = re["UserID"].ToString();
您可以通过使用列名称索引
DataReader
来访问当前行单元格,如txtMemberId.Text=thisReader[“UserID”]//在这里,您应该执行增量
。但老实说,以selectmax(Id)+1
的方式生成Id
是很奇怪的,GUIDs
nadAutoinc integer
在我们的时代更常用
您的MAX+1
应该如下所示:
private void frmAddMember_Load(object sender, EventArgs e)
{
using (var connection = new SqlConnection(Properties.Settings.Default.BioEngineeringDB))
{
connection.Open();
using (var cmd = new SqlCommand("SELECT (COALESCE(MAX(UserID), 0) + 1) as UserID FROM Users", connection))
{
SqlDataReader re = cmd.ExecuteReader();
if (re.Read())
{
txtMemberId.Text = re["UserID"].ToString();
您可以通过使用列名称索引
DataReader
来访问当前行单元格,如txtMemberId.Text=thisReader[“UserID”]//在这里,您应该执行增量
。但老实说,以selectmax(Id)+1
的方式生成Id
是很奇怪的,GUIDs
nadAutoinc integer
在我们的时代更常用
您的MAX+1
应该如下所示:
private void frmAddMember_Load(object sender, EventArgs e)
{
using (var connection = new SqlConnection(Properties.Settings.Default.BioEngineeringDB))
{
connection.Open();
using (var cmd = new SqlCommand("SELECT (COALESCE(MAX(UserID), 0) + 1) as UserID FROM Users", connection))
{
SqlDataReader re = cmd.ExecuteReader();
if (re.Read())
{
txtMemberId.Text = re["UserID"].ToString();
您可以通过使用列名称索引
DataReader
来访问当前行单元格,如txtMemberId.Text=thisReader[“UserID”]//在这里,您应该执行增量
。但老实说,以selectmax(Id)+1
的方式生成Id
是很奇怪的,GUIDs
nadAutoinc integer
在我们的时代更常用
您的MAX+1
应该如下所示:
private void frmAddMember_Load(object sender, EventArgs e)
{
using (var connection = new SqlConnection(Properties.Settings.Default.BioEngineeringDB))
{
connection.Open();
using (var cmd = new SqlCommand("SELECT (COALESCE(MAX(UserID), 0) + 1) as UserID FROM Users", connection))
{
SqlDataReader re = cmd.ExecuteReader();
if (re.Read())
{
txtMemberId.Text = re["UserID"].ToString();
删除autoinc id列,改为添加guid id列。然后,您可以使用Guid.NewGuid().ToString()在客户机上生成Id删除autoinc Id列并添加Guid Id列。然后,您可以使用Guid.NewGuid().ToString()在客户机上生成Id删除autoinc Id列并添加Guid Id列。然后,您可以使用Guid.NewGuid().ToString()在客户机上生成Id删除autoinc Id列并添加Guid Id列。然后,您可以使用Guid.NewGuid().ToString()在客户机上生成Id假设您的Id列是由数据库生成的(自动递增等)。创建记录时只需获取Id即可
var cmd = new SqlCommand("INSERT INTO User(FirstName) VALUES('bob')");
var id = (int) cmd.ExecuteScalar();
txtMemberId.Text = id.ToString();
假设您的ID列是由数据库生成的(自动递增等),那么在创建记录时只需获取ID即可
var cmd = new SqlCommand("INSERT INTO User(FirstName) VALUES('bob')");
var id = (int) cmd.ExecuteScalar();
txtMemberId.Text = id.ToString();
假设您的ID列是由数据库生成的(自动递增等),那么在创建记录时只需获取ID即可
var cmd = new SqlCommand("INSERT INTO User(FirstName) VALUES('bob')");
var id = (int) cmd.ExecuteScalar();
txtMemberId.Text = id.ToString();
假设您的ID列是由数据库生成的(自动递增等),那么在创建记录时只需获取ID即可
var cmd = new SqlCommand("INSERT INTO User(FirstName) VALUES('bob')");
var id = (int) cmd.ExecuteScalar();
txtMemberId.Text = id.ToString();
我对你的工作流程有点困惑。因此:用户创建新成员->然后您想向他们显示新成员的id->所以您重新加载表单并尝试获取最后插入的id?@Jedediah更新了问题以显示我试图实现的目标我对您的工作流有点困惑。因此:用户创建新成员->然后您想向他们显示新成员的id->所以您重新加载表单并尝试获取最后插入的id?@Jedediah更新了问题以显示我试图实现的目标我对您的工作流有点困惑。因此:用户创建新成员->然后您想向他们显示新成员的id->所以您重新加载表单并尝试获取最后插入的id?@Jedediah更新了问题以显示我试图实现的目标我对您的工作流有点困惑。因此:用户创建新成员->然后您想向他们显示新成员的id->所以您重新加载表单并尝试获取最后插入的id?@Jedediah更新了问题,以显示我试图实现的目标完美@agent5566!另外,当你提到GUIDs和AutoInc时,说实话,我们在学校里做了一个小组项目,我留下了一个乱七八糟的数据库,直到周五才完成,因为没有其他人会打扰哈哈,所以这就是乱七八糟的原因,我将在未来花更多的时间为我自己的workperfect@agent5566设计!另外,当你提到GUIDs和AutoInc时,说实话,我们在学校里做了一个小组项目,我留下了一个乱七八糟的数据库,直到周五才完成,因为没有其他人会打扰哈哈,所以这就是乱七八糟的原因,我将在未来花更多的时间为我自己的workperfect@agent5566设计!另外,当你提到GUIDs和AutoInc时,说实话,我们在学校里做了一个小组项目,我留下了一个乱七八糟的数据库,直到周五才完成,因为没有其他人会打扰哈哈,所以这就是乱七八糟的原因,我将在未来花更多的时间为我自己的workperfect@agent5566设计!另外,正如你提到的GUIDs和AutoInc,说实话,我们正在学校做一个小组项目,我留下了一个乱七八糟的数据库,直到周五才能完成,因为没有其他人会打扰哈哈,所以这就是乱七八糟的原因,我以后会花更多的时间为我自己的工作设计