J'utilise Sybase Server, projet connecté à DB via DataSet. J'ai créé requête d'insertion sur mon TableAdapterScalar Insérer une requête return null
INSERT INTO DBA.opt_port(port, port_level, prim, kluch_raz, speed, agr_port, port_bad)
VALUES (?, ?, ?, ?, ?, ?, ?)
Interrogation mode d'exécution est réglé sur Scalar, mais après avoir appelé cette requête, il retourne toujours NULL.
var newId = opt_portTableAdapter.InsertNewPort(int.Parse(textBox1.Text), int.Parse(textBox2.Text),
textBox3.Text, kluch, int.Parse(textBox4.Text), ToNullableInt(textBox5.Text),
ToNullableInt(textBox6.Text))
Je paramètre également ajouté pour interroger collection de paramètres, régler le sens que ReturnValue et SourceColumn à ma clé primaire, mais toujours résultat nul. Lorsque je vérifie manuellement un nouvel enregistrement dans ma table, il existe et pKey est défini. Comment puis-je obtenir ma clé primaire après l'insertion d'une ligne?
Table requête de création est
CREATE TABLE "DBA"."opt_port" (
"port" smallint NOT NULL,
"port_level" smallint NOT NULL DEFAULT 1,
"prim" char(128) NULL,
"n_pp" integer NOT NULL DEFAULT autoincrement,
"kluch_raz" smallint NULL,
"speed" smallint NULL,
"agr_port" smallint NULL,
"port_bad" smallint NULL,
PRIMARY KEY ("n_pp")
);
essayer d'exécuter la procédure directement dans le sql avec les params vous re passer et vérifier! –