繁体   English   中英

需要在SQL行中插入破折号(-)

[英]Need to insert a dash(-) into a sql row

我正在使用SQL SERVER,并且我想插入(不选择)行,其值类似于123456-7,因此它们会像这样存储在数据库中,但是我已经尝试了该列的每种类型,并且它们不允许我那样做。

如果我将其设置为接受空值,它将不会执行查询或将值交换为NULL。

实际数据库设置

在此处输入图片说明

正确插入

Insert into Personal_Cost
Values ('2018-01-01', 'a', '79745060', 1000) 

错误插入

Insert into Personal_Cost
Values ('2018-01-01', 'a', '79745060-1', 1000) 

Varchar当然允许您要存储的数据...

create table #table
(lname varchar(150))

insert into #table
(lname)
values
('123456-7-8')

select * from #table

我必须手动将每个有缺陷的破折号(-)字符替换为一个空格,因为它既不允许我也不插入下划线(_)。

我不知道这是怎么回事,如果它是Microsoft Tool或一个不允许使用的字符误认为是破折号(我怀疑这是因为我自己替换了它),但是它并没有按照我想要的方式工作。

希望您的回答对可能有类似问题的其他人有用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM