如何使用时间戳数据类型在 sql 服务器数据库中插入当前日期和时间?

How to insert current date and time in sql server database using timestamp datatype?

我想从 asp.net 网页将当前日期和时间插入 sql 服务器数据库。我在 sql 服务器 table 中使用时间戳数据类型。

table结构:

CREATE TABLE user3
  (
     uname VARCHAR(50) PRIMARY KEY,
     email VARCHAR(50),
     doj   TIMESTAMP
  ); 

使用的代码:

   cmd.Parameters.Clear();
        cmd.CommandText = "insert into user3 values(@uname,@email,@doj)";
        cmd.Parameters.AddWithValue("@uname", uname);           
        cmd.Parameters.AddWithValue("@email", email);   
        cmd.Parameters.AddWithValue("@jdate", DateTime.Now);
        if (cn.State == ConnectionState.Closed)
            cn.Open();
        cmd.ExecuteNonQuery();
        cn.Close();

请帮助我提供您的建议和解决方案。

时间戳是行版本控制的方法。它是自动生成的。但日期时间是一种数据类型。所以使用日期时间而不是时间戳。

create table user3(uname varchar(50) primary key,email varchar(50),doj datetime);

使用 datetimedefault 值:

create table user3 (
    uname varchar(50) primary key,
    email varchar(50),
    doj datetime default getdate()
   );

当您在 table 中插入一个新行时——doj 没有值——然后它会自动设置。我通常称这个专栏为CreatedAt.

假设每次用户注册时您都在插入;

尝试在 table

上设置约束

创建table user3(uname varchar(50) primary key,email varchar(50),doj datetime default getdate());

这样就不用每次都传入那个值了

SQL Server default date time stamp?