C# 学生成绩管理系统 向数据库中添加数据失败

刚学C#的小白一个 有好多问题都不太懂 希望各位大神忍受一下哈 虚心求教
C#学生成绩管理系统 连接数据库 向数据库写入学生信息失败

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace WindowsApplication1
{
public partial class XinXiShuRu : Form
{

    public XinXiShuRu()
    {
        InitializeComponent();   

    }

    private void XinXiShuRu_Load(object sender, EventArgs e)
    {


    }

    private void button1_Click(object sender, EventArgs e)
    {
        try
        {
            string strcon = "Server=.;database=StudentCj;Integrated Security=true";
            SqlConnection con;
            con = new SqlConnection(strcon);
            DataSet sd = new DataSet();
            string sqlbj = "select bjdm from bj where bjmc='" + comboBox1.Text + "'";
            string id = "select* student from id='" + textBox1 + "'";
            SqlDataAdapter sda = new SqlDataAdapter(id, con);
            sd.Clear();
            sda.Fill(sd, "id");

            if (sd.Tables[0].Rows.Count != 0)
            {

                MessageBox.Show("你输入的信息有误");
                                }
            else
            {
                SqlDataAdapter sda1 = new SqlDataAdapter(sqlbj, con);
                sd.Clear();
                sda1.Fill(sd, "bjmc");
                string bjcx = sd.Tables[0].Rows[0][0].ToString();
                string sql = "insert into student(id,name,bjdm) values('" + textBox1.Text + "','" + textBox2.Text + "','" + bjcx + "')";
                SqlCommand com = new SqlCommand(sql, con);
                con.Open();
                com.ExecuteNonQuery();
                con.Close();
                MessageBox.Show("恭喜你!输入成功!");
                textBox1.Text = "";
                textBox2.Text = ""; 
            }

        }
        catch
        {
            MessageBox.Show("你输入的信息有误");
        }

    }

    private void textBox1_TextChanged(object sender, EventArgs e)
    {

    }

    private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
    {

    }

    private void textBox2_TextChanged(object sender, EventArgs e)
    {

    }

}

}

3个回答

        string id = "select* student from id='" + textBox1 + "'";
        SqlDataAdapter sda = new SqlDataAdapter(id, con);
        sd.Clear();
        sda.Fill(sd, "id");

既然你的表名叫做student,为什么你下面Fill的时候变成id了。

caozhy
贵阳老马马善福专业维修游泳池堵漏防水工程 你的sql都不对,form后面跟表名,然后是where,你表名写在前面,where也没有,瞎搞
大约一年之前 回复
LIANGJUN369
L_JUN1758 改为sda.Fill(sd,"student"): 还是一样的不行……
大约一年之前 回复

你的代码还有问题吗?有的话可以粘贴出来看一下

string id = "select* student from id='" + textBox1 + "'"; 这一句应该是 string id = "select* student from id='" + textBox1.Text + "'";吧?
你怎么能直接把textBox1这个控件拼到字符串里面,应该拼接的是textBox1.Text吧?

LIANGJUN369
L_JUN1758 提示:System.IndexOutOfRangeException:在位置0处没有任何行 在 System.Data.RBTree 1.GetNodeByIndex(Int32 userIndex) 在 System.Data.RBTree 1.get _Item(Int32 index) 在 System.Data.DataRowCollection.get _Item(Int32 index) 在 WindowsApplication1.XinXiShuRu.button Click(Object sender, EventArgs e) 位置C:\UsersAdministrator.USR20190111ZN\Deskop\成绩管理系统\XinXiShuRu.cs:行号51
大约一年之前 回复
LIANGJUN369
L_JUN1758 谢谢 ,你不说我还没发现。 但改了以后还是报错
大约一年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问

相似问题

1
C#连接本地Mysql数据库失败
1
c# 怎么把sqlite数据库查出的某一列数据放进一个数组内?
3
C#中向数据库添加数据,SQL数据库对应表格没有添加相应记录怎么解决?
1
C# 将数据库查询出来的两张表 赋到两个 DataTable中然后合并到一个DataTable中然后添加到Datagridview中....
0
如何向C#winform中的chart图以表格的形式加数据
1
c# 如何从数据库格式(eg: .db , .sqlite)文件流中读取数据信息显示界面中,而不是直接从文件中读取
1
c#mongodb如何从第一个数据开始一直往后读取数据?
2
C#中有没有类似QT的Graphics图元框架?
2
c++引用c# dll,在C++头文件中引用,c# dll和c# namespace,总是提示找不到c# namespace
2
如何把MYSQL中某个表中的一列数据提取出来在VS2015中的c#中绘制成曲线
3
c# 操作sqlserver新增数据成功,但查询时却查不到!
4
c#实现登录界面成功后怎么显示登录名
2
c# DbConnection里用于打开数据库连接的open函数,在数据库断网情况下响应时间太长怎么办
4
C# 同时支持两种数据库,SQL server与Oracle
1
c# 操作Mysql查询数据问题
1
C++ SQLite3如何关闭数据库连接池?
1
想问以下w3cschool上C#教程-C#数据类型 decimal和double数据范围表示什么意思?
2
C#, Arcengine,关于Geoprocessor处理后,无法进行数据库查询等操作的问题!
2
如果在C中调用C#函数并获取字符串的返回值给C。
1
c#后台查询sql server数据库