Imports System.Data.SqlClient
class adobasic
public shared Sub Main()
Try'Chaîne de connexionDim connectString AsString = "database=test;server=am01;User ID=samfisher;pwd=echelon"'Objet connectionDim connection As SqlConnection = new SqlConnection(connectString)
'Ouverture
connection.Open()
'Fermeture
connection.Close()
Catch ex As Exception
System.Diagnostics.Debug.WriteLine(ex.ToString())
EndTryEndSubEndClass
On utilise les objets Command et DataReader.
Exemple avec SQL Server
Trace.Listeners.Add(New TextWriterTraceListener(Console.Out))
Dim connectString AsString = "database=test;server=SRV01;User ID=samfisher;pwd=echelon"Dim connection As SqlConnection = New SqlConnection(connectString)
connection.Open()
Dim command As SqlCommand = New SqlCommand("SELECT * FROM usr_contract", connection)
Dim reader As SqlDataReader = command.ExecuteReader
Dim row AsObject() = NothingWhile reader.Read
If row IsNothingThen
row = NewObject(reader.FieldCount) {}
EndIf
reader.GetValues(row)
Dim i AsInteger = 0
While i < row.GetLength(0)
IfNot row(i) IsNothingAndAlsoNot (row(i) Is DBNull.Value) Then
Trace.Write(row(i).ToString())
Else
Trace.Write("NULL")
EndIfIf i < row.GetUpperBound(0) Then
Trace.Write(" | ")
EndIf
i = i + 1
EndWhile
Trace.Write(vbCrLf)
EndWhile
reader.Close()
connection.Close()
Consulter les cours sur ADO.NET pour plus d'informations
Pour exécuter une requête contenant une quote simple, il faut utiliser les
requêtes paramétrées
On peut aussi faire plus simple en doublant les quotes avant d'exécuter la requête.
Dim sql AsString = "SELECT * FROM pasta WHERE name = 'aujourd''hui'"'OuDim name AsString = "aujourd'hui"
sql = "SELECT * FROM pasta WHERE name = " + name.Replace("'", "''")
Pour pouvoir exécuter une procédure stockée, vous devez utiliser un objet SqlCommand et indiquer à sa propriété CommandType que vous désirez utiliser une procédure stockée
'Objet SqlCommandDim cmd As SqlCommand = New SqlCommand()
'On indique que l'on souhaite utiliser une procédure stockée
cmd.CommandType = CommandType.StoredProcedure
'On donne le nom de cette procédure stockée
cmd.CommandText = "CustOrderHist"
Plus d'informations sur les différents cours ADO.NET (voir liens plus bas)
En utilisant un DataSet et sa méthode WriteXml, vous avez la possibilité d'écrire le contenu d'une table dans un fichier XML.
Imports System.Data.SqlClient
PublicClass EcrireXML
PublicSharedSub Main()
'Création de la chaîne de connexionDim connectString AsString = "Server=SRV01;Database=Northwind;User ID=samfisher;Password=echelon"'Création de la connexionDim connection As SqlConnection = New SqlConnection(connectString)
'Création du SqlDataAdapterDim da As SqlDataAdapter = New SqlDataAdapter("Select * from Customers", connection)
'Création d'un DataSetDim ds As DataSet = New DataSet
'Remplissage du DataSet avec le SqlDataAdapter
da.Fill(ds, "Customers")
'Ecriture du fichier XML au moyen de la méthode WriteXml
ds.WriteXml("E:\Temp\TestXml.xml")
EndSubEndClass
Voici, après traitement, le contenu du fichier TestXml.xml :