首页 > 解决方案 > AM/PM 保存为 ?? 没有 SQL N 前缀

问题描述

当数据不是英文时,我通常使用 N 前缀将数据插入到 sql server 表中,但是当我想将当前时间保存为 AM 或 PM 而保存为??我不使用时N prefix

这就是我在数据库中节省时间的方法,这里 mtime 是nvarchar(50)

<%
t=time
sql=insert into notes (body,mtime) values (N'" & body &"','"& t &"')"
Con.execute sql
%>

为什么我需要 N 前缀来节省时间?输出的不是asp time英文字符的字符串吗?

标签: sql-servervbscriptasp-classic

解决方案


我不明白你为什么需要存储AM/PMas STRING,你所需要的只是选择适合DataType你的情况TIME

存储一些数据后,这很容易:)

CREATE TABLE Test(
    MyTime TIME
    );

INSERT INTO Test VALUES
('08:00:00'),
('13:00:00');

SELECT CONVERT(VARCHAR(15), MyTime,100) AS TheTimeIs
FROM Test;

结果:

+-----------+
| TheTimeIs |
+-----------+
| 8:00AM    |
| 1:00PM    |
+-----------+

除此之外,您似乎还对N'前缀感到困惑,何时以及为什么要使用它,这是关于该前缀的一个很好的答案


推荐阅读