我有一个将数据插入数据库的SQL查询。 以下是我的示例数据:
但是,当我尝试将OrderID
和Email
值插入表格时,SQL Server无法读取“#”。
那么,我怎么逃避呢?
我知道撇号可以使用CHAR(29)
进行转义,而#
会等同于什么?
以下是我的询问:
INSERT INTO orders(orderid,email) VALUES(1,'#TestDistribution')
下面是表格结构:
订单
orderid: int
email: nchar(150)
服务器没有引发错误,但在检查订单表时,未插入数据。
答案 0 :(得分:1)
SQL Server 2008
使用:
创建/插入:
CREATE TABLE yourtable
([OrderID] int, [Email] nvarchar(99))
;
INSERT INTO yourtable
([OrderID], [Email])
VALUES
(1, '#TestDistribution')
;
选择
SELECT * FROM yourtable
输出:
OrderID Email
1 #TestDistribution
答案 1 :(得分:1)
你有两个'结束
试
INSERT INTO orders(orderid,email) VALUES(1,'#TestDistribution')
答案 2 :(得分:0)
确保您的列类型应为varchar
create table orders(orderid int(30),email varchar(30));
insert into orders value(1,'#TestDistribution');
select * from orders;
答案 3 :(得分:0)
感谢您在此处发布您的答案。这个问题已经解决了。我发现我的服务器中有一些设置会限制特殊字符。
道歉。
谢谢大家!