簡體   English   中英

將連接鏈接到 ASP.NET 中的 SQL 服務器數據庫(創建注冊頁面)

[英]Linking a connection to SQL Server database in ASP.NET (creating signup page)

對我做錯了什么感到困惑,在web.config文件中,我添加了

<connectionStrings>
    <add name="con" 
        connectionString="Data Source=DESKTOP-8TA96FC\SQLEXPRESS;Initial Catalog=PersciptionPal;Intergrated Security=true;"/>
</connectionStrings>

在我的注冊頁面中,我寫了這個

using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Web.UI.HtmlControls;

namespace PerscriptionManager
{
    public partial class WebForm5 : System.Web.UI.Page
    {
        string strcon = ConfigurationManager.ConnectionStrings["con"].ConnectionString;

        protected void Page_Load(object sender, EventArgs e)
        {
        }

        // sign up button 
        protected void Button1_Click(object sender, EventArgs e)
        {
            //Response.Write("<script>alert('Testing');</script>");
            try
            {
                SqlConnection con = new SqlConnection(strcon);

                if (con.State == ConnectionState.Closed)
                {
                    con.Open();
                }// checking if the connection is actually connected to the database

                SqlCommand cmd = new SqlCommand("INSERT INTO User_Signup_tbl (Full_name, dob, Contact_Num, Email, County, City, Postcode, Full_Address, User_ID, Password, Account_Status,) VALUES (@Full_name, @dob, @Contact_Num, @Email, @County, @City, @Postcode, @Full_Address, @User_ID, @Password, @Account_Status,)", con);

                // place holders must add values 
                cmd.Parameters.AddWithValue("@Full_name", TextBox1.Text.Trim());
                cmd.Parameters.AddWithValue("@dob", TextBox2.Text.Trim());
                cmd.Parameters.AddWithValue("@Contact_Num", TextBox3.Text.Trim());
                cmd.Parameters.AddWithValue("@Email", TextBox4.Text.Trim());
                cmd.Parameters.AddWithValue("@County", DropDownList1.SelectedItem.Value);
                cmd.Parameters.AddWithValue("@City", TextBox6.Text.Trim());
                cmd.Parameters.AddWithValue("@PostCode", TextBox7.Text.Trim());
                cmd.Parameters.AddWithValue("@Full_Address", TextBox5.Text.Trim());
                cmd.Parameters.AddWithValue("@User_ID", TextBox8.Text.Trim());
                cmd.Parameters.AddWithValue("@Password", TextBox10.Text.Trim());
                cmd.Parameters.AddWithValue("@account_status", "pending"); // hard code as first time login 

                cmd.ExecuteNonQuery();    // execute the code and fill database 
                con.Close(); // close connection 

                Response.Write("<script>alert('Sign Up Activated. Please Login Using New Details');</script>");
            }
            catch(Exception ex)
            {
                Response.Write("<script> alert('" + ex.Message + "');</script>"); // alert if error appears // dynamic message 
            }
        }
    }
}

在網上做了一些研究之后,當單擊按鈕時,我真的看不出我在哪里出錯了,沒有任何反應並且數據庫沒有更新。

為幫助干杯:)

  SqlCommand cmd = new SqlCommand("INSERT INTO User_Signup_tbl (Full_name, dob, Contact_Num, Email, County, City, Postcode, Full_Address, User_ID, Password, Account_Status) VALUES (@Full_name, @dob, @Contact_Num, @Email, @County, @City, @PostCode, @Full_Address, @User_ID, @Password, @account_status)", con); 

傳遞的參數名稱必須在 sql 中匹配而且我認為你不需要在 sql 括號末尾的前導逗號

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM