0

SQL Server のストアド プロシージャに # を挿入しようとしています。書いたときに間違いがあり、削除すると機能するのはなぜですか?.

「#」を書きたい行は次のとおりです。

INSERT INTO @Resultado VALUES ('CB'+'0596'+CAST(@aniomes AS CHAR(6))+SPACE(518)+'#')

そして最後に書きたいと思います。

私たちを手伝ってくれますか?

4

3 に答える 3

1

insert . . . select代わりに次のメソッドを使用してください。

INSERT INTO @Resultado
    select 'CB'+'0596'+CAST(@aniomes AS CHAR(6))+SPACE(518)

また、テーブルに列insertが 1 つしかない場合でも、その列を常にリストすることをお勧めします。

于 2013-06-08T15:17:56.507 に答える
0

# には char(35) を使用

INSERT INTO @Resultado VALUES ('CB'+'0596'+CAST(@aniomes AS CHAR(6))+SPACE(518)+char(35))
于 2013-06-18T08:36:13.537 に答える
0

エラーを再現できないようです...これはうまくいきました:

DECLARE @Resultado TABLE( 
test varchar(5000)
)
INSERT INTO @Resultado VALUES ('CB'+'0596'+CAST('123456' AS CHAR(6))+SPACE(518)+'#')
select * from @Resultado

518 スペースの前の # を見つけられなかったのでしょうか? それとも、列が null 不可で、変数 @aniomes が NULL だったのでしょうか?

于 2013-06-18T08:47:29.840 に答える