>potresti postare il codice del metodo public int insert(String
>campo1,String campo2...){return idRow}?
supponiamo di avere la tabella definita prima, quella con un campo id identity e la descrizione varchar(50):
Creazione della stored procedure:
CREATE PROCEDURE proc_InsertIntoMyTable
(
@campo1 varchar(50),
@idres int = NULL output
)
AS
BEGIN
BEGIN TRAN
INSERT INTO dbo.TabellaIdentity
VALUES(@campo1)
SET @idres = SCOPE_IDENTITY()
COMMIT TRAN
END
Codice C#:
using System.Data.SqlClient;
public int insert (string campo1)
{
SqlConnection sqlConn = new SqlConnection(tuaconnstring);
sqlConn.Open();
SqlCommand sqlCmd = sqlConn.CreateCommand();
sqlCmd.CommandText = "proc_insertIntoMyTable";
sqlCmd.CommandType = CommandType.StoredProcedure;
sqlCmd.Parameters.Add("@campo1",SqlDbType.VarChar,50);
sqlCmd.Parameters.Add("@idres",SqlDbType.Int);
sqlCmd.Parameters["@idres"].Direction = ParameterDirection.InputOutput;
sqlCmd.Parameters["@campo1"].Value = campo1;
sqlCmd.ExecuteNonQuery();
return Int32.Parse(sqlCmd.Parameters["@idres"].Value.ToString());
if (sqlConn.State != ConnectionState.Closed)
{
sqlConn.Close();
}
}
>ps: cosa si intende per l'istruzione Transact-SQL?
un'istruzione transact-sql (o t-sql) è un'istruzione scritta appunto in linguaggio t-sql, il quale può essere definito come un'estensione del linguaggio sql standard, programmabile e con la possibilità di effettuare operazioni molto più complesse che i semplici statement consentono. E' un "linguaggio di programmazione" utile alla gestione del db ed alla interazione verso il db.
Si possono eseguire cicli, utilizzare variabili, e quant'altro, in maniera del tutto simile ad un linguaggio di programmazione.
Consulta comunque i books online di sql server, troverai documentazione a riguardo..
ciao!
E credimi, usa le stored procedure..
leggi anche cosa si dice in questo link:
http://blogs.ugidotnet.org/nettools/archive/2006/11/12/54508.aspx
Alx81 =)
http://blogs.dotnethell.it/suxstellino