Ich habe 6 Image
Typ Parameter und eine aber einfügen Anweisung funktioniert nicht.Verschiedene Arten von Parametern in Prozedur einfügen Anweisung
Alter Procedure [dbo].[spGetImages]
@img1 Image, @img2 Image, @img3 Image,
@img4 Image, @img5 Image, @img6 Image,
@Lname nvarchar(50)
As
Begin
Insert into ImageData (Images, LoginName)
Values((@img1), (@img2), (@img3),
(@img4), (@img5), (@img6), (@Lname))
End
Fehler:
There are fewer columns in the INSERT statement than values specified in the
VALUES
clause. The number of values in the VALUES clause must match the number of columns specified in the INSERT statement.
Obwohl diese einfache Aussage aber, warum ich diese Störung erhalten? etwas zu tun, wie diese
Es ist ziemlich viel falsch mit Ihrem DDL. Zum einen haben einige der Parameter keine deklarierten Datentypen in Ihrer DDL-Anweisung. Es ist auch gut, dass Sie eine vollständig qualifizierte Einfügung durchführen möchten, d. H. Die Spalten explizit auflisten. Sie müssen jedoch die gleichen Zahlenfelder in den Wertkonstruktoren haben. – Yobik
Die Datentypen 'ntext',' text' und 'image' werden in einer zukünftigen Version von SQL Server entfernt. Vermeiden Sie die Verwendung dieser Datentypen in neuen Entwicklungsarbeiten, und planen Sie, Anwendungen zu ändern, die sie derzeit verwenden. Verwenden Sie stattdessen 'nvarchar (max)', 'varchar (max)' und 'varbinary (max)'. [Details siehe hier] (http://msdn.microsoft.com/en-us/library/ms187993.aspx) –