1

我有一个 ASP.NET 页面,其中包含文本框,即用户名和密码以及一个名为 cmdlogin 的按钮。我希望当我在文本框中输入数据时,应该将数据保存到数据库中。

在 Visual Studio 的 SQL 服务器中,我创建了表,甚至还给出了

INSERT INTO cmd_login VALUES(".......").

现在的问题是当我在文本框中输入数据时,它没有保存在数据库表中。我能做些什么。

我已将连接字符串放入类文件中。我需要把我的连接字符串放在web.config?

我的代码是

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
public class Db
{
    public static SqlConnection GetConnection()
    {
        SqlConnection cn = new SqlConnection();
        cn.ConnectionString =@"Data                 Source=.\SQLEXPRESS;AttachDbFilename=E:\talat\MyRealSacaProject\App_Data\SACALogin.mdf;Inte    grated Security=True;User Instance=True;";
        cn.Open();
        return cn;
    }
    public static void SaveAdmin(admin a)
    {
        SqlConnection cn = GetConnection();
        string sql = "INSERT INTO admin_login VALUES(@[User-Name],@Password)";
        SqlCommand cmd = new SqlCommand(sql, cn);
        cmd.Parameters.AddWithValue("@[User-Name]",a.username);
        cmd.Parameters.AddWithValue("@Password", a.password);
        cmd.ExecuteNonQuery();
        cn.Close();
    }
    }
4

3 回答 3

0

试试这个简单的代码:

SqlConnection _conn = new SqlConnection(_connString);
_conn.Open();
SqlCommand _cmd = new SqlCommand();
_cmd.CommandType = CommandType.StoredProcedure;
_cmd.Parameters.Clear();
_cmd.Connection = _conn;
_cmd.CommandText = "INSERT INTO [tablename] VALUE ([fieldvalue])"; //here your textbox    
int _execute = _cmd.ExecuteNonQuery();

bool _result = false;
if(_execute != 1)
    _result = true;

_conn.Close();
于 2013-05-03T07:00:46.310 回答
0

如下所示更改您的代码,它将起作用

public static SqlConnection GetConnection()
{
    string ConString="Data Source=.\SQLEXPRESS;AttachDbFilename=E:\talat\MyRealSacaProject\App_Data\SACALogin.mdf;Integrated Security=True;User Instance=True";
    SqlConnection cn = new SqlConnection(ConString);

    cn.Open();
    return cn;
}
于 2013-05-03T08:45:11.847 回答
0

尝试从您的代码中进行此更改:

public static void SaveAdmin(admin a)
{
    SqlConnection cn = GetConnection();
    string sql = "INSERT INTO admin_login VALUES('" + a.username + "','" + a.Password + "')";
    SqlCommand cmd = new SqlCommand(sql, cn);
    cmd.ExecuteNonQuery();
    cn.Close();
}
于 2013-05-03T08:46:59.500 回答