2008-11-24 21 views
0

de l'objet pour avoir des données de base de données SQL Server, je peux utiliser le code ci-dessousComment rejoindre DML statemens dans une commande CommandText

Dim sql As String = "SELECT emp_id, emp_name FROM emp; SELECT dep_id, dep_name FROM department;" 
Dim da As New SqlClient.SqlDataAdapter(sql, connString) 
Dim ds As New DataSet("Data") 

da.Fill(ds) 

Je vais avoir deux tables dans ds ensemble de données. Comment puis-je coder la même chose pour la base de données Oracle? J'essaye de coder comme ci-dessus, mais j'ai eu l'erreur msg. ORA-00911: Caractère invalide

En outre, je voudrais également utiliser l'instruction DELETE. Par exemple

Dim sql As String = "DELETE FROM emp WHERE emp_id = 1; DELETE FROM department WHERE dep_id = 4" 
Dim cmd As New SqlCommand(sql, conn) 
cmd.ExecuteNonQuery() 

Merci.

Répondre

1

Afin d'exécuter plusieurs instructions DML par un objet Command, les instructions doivent être placées dans un bloc BEGIN ... END. Par exemple

Dim sql As String = "BEGIN DELETE FROM emp WHERE emp_id = 1; DELETE FROM department WHERE dep_id = 4; End;" 
...