我有一个登录页面链接到登录数据库表,其中包含3列ID
,Pass
和AccessTime
。只要登录ID成功,我就需要使用访问日期和时间更新相应的记录。
UPDATE Login SET AccessTime = '"+DateTime.Now+"' WHERE ID = '" + id + "' ;"
然后,检索文本框中其他页面中的ID
和AccessTime
。
我已经将会话用于检索过程。
现在,我如何在C#ASP.NET上实现它?我是新手......
答案 0 :(得分:1)
首先,了解ASP.NET http://www.asp.net/web-pages/overview/getting-started
的基础知识第二次,创建一个程序
ALTER PROCEDURE SP_TRACK_USERLOG
@id varchar(100),
@password varchar(100)
AS
BEGIN
SET NOCOUNT ON;
INSERT INTO LOGIN(ID,Pass ,AccessTime) VALUES (@id,@password ,GETDATE())
END
第三次,在SERVER端调用SP,如下所示
SqlCommand cmd = new SqlCommand("SP_TRACK_USERLOG", con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@id", Session["id"].ToString());
cmd.Parameters.AddWithValue("@password", Session["password"].ToString());
cmd.ExecuteNonQuery();
另外,了解 TimeZone Daylight saving time and time zone best practices。这将有助于长远。
中的连接字符串答案 1 :(得分:0)
您应该使用使用:
using System.Data;
using System.Data.SqlClient;
然后创建连接,打开连接,编写SQL命令和SQL适配器
static void Main(string[] args)
{
SqlConnection conn = new SqlConnection(@"Data Source = .\SQLEXPRESS; Initial Catalog=AdventureWorks2014; Integrated Security=SSPI");
conn.Open();
在sql命令中,您应该使用sql参数
//somthing like thes
SqlParameter param = new SqlParameter();
param.ParameterName = "@param";
param.Value = TheValue;
然后你可以在sql命令中使用它们
SqlCommand cmd = new SqlCommand("UPDATE Login SET AccessTime = '"+DateTime.Now+"' WHERE ID = '" + id + "' ;"", conn);
//add parameters
cmd.Parameters.Add(param);
cmd.ExecuteScalar();
conn.Close();
conn.Dispose();
}