SqlException: 'nvarchar' 附近的语法不正确

莱昂森尼迪

我收到此错误:

System.Data.SqlClient.SqlException: 'nvarchar' 附近的语法不正确。'Name' 附近的语法不正确。

尝试单击“添加”按钮时。这是我的代码:

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.Sql;
using System.Data.SqlClient;
using System.Net;
using System.Net.Mail;
using System.Net.Mime;

namespace OOP_Draft
{
    public partial class Form1 : Form
    {
        double amount, monthlyPay, totalPay;
        int years;

        private void btnReset_Click(object sender, EventArgs e)
        {
            txtName.Clear();
            txtEmpno.Clear();
            txtEmail.Clear();
            txtDept.Clear();
            txtAmount.Clear();
            txtYears.Clear();
            lblPay.Text = "";
            lblTot.Text = "";
            rtxtReceipt.Clear();
        }

        private void btnSubmit_Click(object sender, EventArgs e)
        {           
            if(txtName.Text == "")
            {
                MessageBox.Show("Please fill up the form.");
            }
            else if (txtEmpno.Text == "")
            {
                MessageBox.Show("Please fill up the form.");
            }
            else if (txtEmail.Text == "")
            {
                MessageBox.Show("Please fill up the form.");
            }
            else if (txtDept.Text == "")
            {
                MessageBox.Show("Please fill up the form.");
            }
            else if (txtAmount.Text == "")
            {
                MessageBox.Show("Please fill up the form.");
            }
            else if (txtYears.Text == "")
            {
                MessageBox.Show("Please fill up the form.");
            }
            else
            {
                amount = double.Parse(txtAmount.Text);
                years = int.Parse(txtYears.Text);
                monthlyPay = amount * 0.03 / (1 - 1 / Math.Pow(1 + 0.02, years * 12));
                totalPay = monthlyPay * years * 12;
                monthly = Convert.ToString(monthlyPay);
                monthly = String.Format("{0:C}", monthlyPay);
                lblPay.Text = (monthly);
                total = String.Format("{0:C}", totalPay);
                lblTot.Text = (total);
                txtAmount.Text = String.Format("{0:C}", amount);
            }
        }

        string monthly, total;

        private void btnEmail_Click(object sender, EventArgs e)
        {
            try
            {
                SmtpClient client = new SmtpClient("smtp.gmail.com", 587);
                client.EnableSsl = true;
                client.Timeout = 10000;
                client.DeliveryMethod = SmtpDeliveryMethod.Network;
                client.UseDefaultCredentials = false;
                client.Credentials = new NetworkCredential("[email protected]", "ironhide13");
                MailMessage msg = new MailMessage();
                msg.To.Add(txtEmail.Text);
                msg.From = new MailAddress("[email protected]");
                msg.Subject = "Loan Receipt";
                msg.Body = rtxtReceipt.Text;
                client.Send(msg);
                MessageBox.Show("Email Sent.");
            }
            catch(Exception ex)
            {
                MessageBox.Show(ex.Message);
            }

        }

        private void btnAdd_Click(object sender, EventArgs e)
        {
            SqlCommand cmd;
            SqlConnection con;

            con = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\Users\Kim\Documents\SMEMCO.mdf;Integrated Security=True");
            con.Open();
            cmd = new SqlCommand("INSERT INTO LoanRecord (Employee Name, Employee Number, Department, Loan Amount, Years To Pay, Monthly Payment, Total Payment) VALUES (@Employee Name, @Employee Number, @Department, @Loan Amount, @Years To Pay, @Monthly Payment, @Total Payment)", con);
            cmd.Parameters.AddWithValue("@Employee Name", txtName.Text);
            cmd.Parameters.AddWithValue("@Employee Number", txtEmpno.Text);
            cmd.Parameters.AddWithValue("@Department", txtDept.Text);
            cmd.Parameters.AddWithValue("@Loan Amount", txtAmount.Text);
            cmd.Parameters.AddWithValue("@Years To Pay", txtYears.Text);
            cmd.Parameters.AddWithValue("@Monthly Payment", lblPay.Text);
            cmd.Parameters.AddWithValue("@Total Payment", lblTot.Text);
            cmd.ExecuteNonQuery();
        }

        private void btnDisplay_Click(object sender, EventArgs e)
        {
            rtxtReceipt.AppendText("Loan Record" + "\t" + "\n");
            rtxtReceipt.AppendText("--------------------------------------------------------" + "\t" + "\n");
            rtxtReceipt.AppendText("Name:" + "\t" + "\t" + "\t" + "\t" + txtName.Text + "\n");
            rtxtReceipt.AppendText("Employee Number:" + "\t" + "\t" + txtEmpno.Text + "\n");
            rtxtReceipt.AppendText("Department:" + "\t" + "\t" + "\t" + txtDept.Text + "\n");
            rtxtReceipt.AppendText("Amount to be loaned:" + "\t" + txtAmount.Text + "\n");
            rtxtReceipt.AppendText("Years to Pay:" + "\t" + "\t" + "\t" + txtYears.Text + "\n");
            rtxtReceipt.AppendText("Interest Rate:" + "\t" + "\t" + lblThree.Text + "\n");
            rtxtReceipt.AppendText("Monthly Payment:" + "\t" + "\t" + lblPay.Text + "\n");
            rtxtReceipt.AppendText("Total Payment:" + "\t" + "\t" + lblTot.Text + "\n");
            rtxtReceipt.AppendText("--------------------------------------------------------" + "\t" + "\n");
            rtxtReceipt.AppendText("        Official Receipt of SMEMCO      " + "\n");

        }

        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {

        }
    }
}

在制作数据库时,我观看了 YouTube 视频。我一步一步地遵循它,但我收到了错误。我也尝试将 '"+"' 放在变量中,但它也不起作用。我的计划是当用户单击添加按钮时,输入的数据和计算将存储到我的数据库表中。相反,该错误会弹出。我做错了什么?

错误信息:

错误信息

莱昂森尼迪

不要在列名/sql 参数中使用空格。您还可以尝试将数据库的 Id 参数的身份规范设置为 true。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

System.Data.SqlClient.SqlException:“ =”附近的语法不正确

System.Data.SqlClient.SqlException:“ =”附近的语法不正确

System.Data.SqlClient.SqlException:'。附近的语法不正确。'

System.Data.SqlClient.SqlException: '',' 附近的语法不正确。

System.Data.SqlClient.SqlException: '9' 附近的语法不正确

System.Data.SqlClient.SqlException: ''USERNAME' 附近的语法不正确。'

System.Data.SqlClient.SqlException:'((。)附近的语法不正确。“错误

“嵌套异常是java.sql.SQLException:'?'附近的语法不正确 ”

异常是 System.Data.SqlClient.SqlException: '9988' 附近的语法不正确

System.Data.SqlClient.SqlException:'@ p0'附近的语法不正确。

部署到Azure时:System.Data.SqlClient.SqlException:'ON'附近的语法不正确

System.Data.dll中的“ System.Data.SqlClient.SqlException”(“')附近的语法不正确。”)?

Webmatrix QueryValue 调用引发 SQLException “'0' 附近的语法不正确。”

'='附近的语法不正确。在System.Data.SqlClient.SqlConnection.OnError(SqlException异常

System.Data.SqlClient.SqlException(0x80131904):'。附近的语法不正确

System.Data.SqlClient.SqlException:关键字“ WHERE”附近的语法不正确

System.Data.SqlClient.SqlException: ''Student' 附近的语法不正确

为什么程序每次运行时都会抛出 SqlException: 'ItemID' 附近的语法不正确?

System.Data.SqlClient.SqlException: '')' 附近的语法不正确。在按钮保存

C#、ASP.NET 核心 | SqlException: 关键字“TOP”附近的语法不正确

Spring-Data-JPA引发“原因:java.sql.SQLException:'limit'附近的语法不正确。” 通过使用findAll

将Guid传递给存储过程将引发Microsoft.Data.SqlClient.SqlException:'@Id'附近的语法不正确。

System.Data.dll中的类型'System.Data.SqlClient.SqlException'发生异常'b'附近的语法不正确

System.Data.SqlClient.SqlException:''='附近的语法不正确。在数据表和对象上

'nvarchar'附近的语法不正确。每当尝试使用网格视图更新数据库表上的字段时,都会出现此错误

当我调用此方法时,我收到一个错误“ System.Data.SqlClient.SqlException:'在cmd.ExecuteNonQuery();上'('。'附近的语法不正确;

异常在运行时停止在.NET Core应用程序中执行:System.Data.SqlClient.SqlException:'关键字'GROUP'附近的语法不正确。

在此int中= sc.executenonquery(); 正在给出错误“''system.data.sqlclient.sqlexception附近的语法不正确”怎么办?

'='附近的语法不正确