在SQL中将日期时间/日期转换为NVarchar格式

时间:2017-02-24 12:44:48

标签: sql-server tsql date datetime nvarchar

我创建了几个表格,格式是日期时间或日期。但是我需要将它们更改为nvarchar。我看到它的方式是我需要删除所有表,修改数据类型并重新创建它们。 有没有办法可以自动更改数据类型?

2 个答案:

答案 0 :(得分:0)

代替getdate请放置您的专栏并尝试

:- import append/3, member/2 from basics.

remove_duplicates([], []).

remove_duplicates([X | Y], Z) :- member(X, Y), !, remove_duplicates(Y, Z).

remove_duplicates([X | Y], [X | Z]) :- remove_duplicates(Y, Z).

hcheck(_, [], []).

hcheck(X, [(X, Y) | L], R) :- !, hcheck(X, L, RR), append([Y], RR, R).

hcheck(X, [_ | L], R) :- hcheck(X, L, R).

check([], _, []).

check([X | Y], L, R) :- hcheck(X, L, RR), check(Y, L, RRR), append(RR, RRR, RRRR), remove_duplicates(RRRR, R).

/********/

/* test */

/********/

[check loaded]

yes
| ?- check([a,c],[(a,aa),(bb,bbb),(a,aa),(c,def)],X).

X = [aa,def];

no
| ?- check([a,b],[(a,c),(a,d),(b,c),(b,e),(c,f)],X).

X = [d,c,e];

no

答案 1 :(得分:0)

如果列被意外设置为DATETIME列,并且您想要更改其类型,那就没问题了:

ALTER TABLE myTable ALTER COLUMN myColumn NVARCHAR(55);

但正如其他人所说,如果表格已经包含数据,并且这些列是否真的要保存DATE值,那么您应该认真考虑这样做。