Ciao East,
la tua routine da quello che vedo inserisce la nuova riga solo nella tabella 'in memoria' (ossia su TabLibri) ma non esegue nessuna scrittura sul db.
Supponiamo quindi che tu abbia una connessione al db chiamata CntDb e la tabella fisica sul db chiamata TabLibri, la routine diverrà :
Try
Dim nuovaRiga As DataRow = DsLibro1.TabLibri.NewRow
Dim StrSql As String
Dim CmdSql As SqlCommand
...
DsLibro1.TabLibri.Rows.Add(nuovaRiga)
StrSql = "Insert Into TabLibri (Prefisso, Codice, Descrizione) " & _
"Values (@Prefisso, @Codice, @Descrizione)"
SqlCmd = New SqlCommand()
SqlCmd.Connection = CntDb
SqlCmd.CommandTimeout = 0
SqlCmd.CommandText = StrSql
SqlCmd.Parameters.Add("@Prefisso",SqlDbType.Varchar,n).value = nuovaRiga("Prefisso")
SqlCmd.Parameters.Add("@Codice",SqlDbType.Varchar,n).value = nuovaRiga("Codice")
SqlCmd.Parameters.Add("@Descrizione",SqlDbType.Varchar,n).value = nuovaRiga("Descrizione")
SqlCmd.ExecuteNonQuery()
Catch
...
End Try
Dove:
CntDb: è la connessione al database che ho supposto essere di tipo Sql
SqlDbType.Varchar,n: è il tipo della colonna della tabella (in questo caso varchar ma potrebbe essere char, float, ...) e n specifica la lunghezza in caratteri nel caso si trattasse di varchar o char.
Prova e sappimi dire.
Ciao.
Loris