Acceuil vb.net(550) ADO.net
|
| ADO.net |
2011-02-24 |
|
Comment puis-je exécuter une procédure stockée
Pour pouvoir exécuter une procédure stockée, vous devez utiliser un objet IDbCommand
et indiquer à sa propriété CommandType que vous désirez utiliser une procédure stockée
'Exemple pour SQL SERVER
'Objet SqlCommand
Dim 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"
Comment écrire le contenu de ma table dans un fichier XML
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
Public Class EcrireXML
Public Shared Sub Main()
'Création de la chaîne de connexion
Dim connectString As String = "Server=SRV01;Database=Northwind;User ID=samfisher;Password=echelon"
'Création de la connexion
Dim connection As SqlConnection = New SqlConnection(connectString)
'Création du SqlDataAdapter
Dim da As SqlDataAdapter = New SqlDataAdapter("Select * from Customers", connection)
'Création d'un DataSet
Dim 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:TempTestXml.xml")
End Sub
End Class
Voici, après traitement, le contenu du fichier TestXml.xml :
-
-
ALFKI
Alfreds Futterkiste
Maria Anders
Sales Representative
Obere Str. 57
Berlin
12209
Germany
030-0074321
030-0076545
Comment transférer des données sous Excel rapidement
Ce code permet un export rapide de données vers une feuille Excel grâce à une requête ou une procédure stockée. Il devient intéressant si les données à exporter sont volumineuses (plusieurs milliers de lignes).
L'ajout de la référence "Microsoft Excel 11.0 Object Library" est nécessaire.
Imports Microsoft.Office.Interop
' dans un événement click de bouton par exemple
Dim xlApp As Excel.Application
Try
xlApp = GetObject(, "excel.application")
Catch
xlApp = New Excel.Application
Finally
xlApp.Visible = False
End Try
'ajout d'une page et sélection
Dim xsTransfert As Excel.Worksheet = xlApp.Workbooks.Add.ActiveSheet
Try
' ici on crée la chaine de connexion
' (on se connecte à SQL Server dans notre exemple)
With xsTransfert.QueryTables.Add(Connection:= _
"ODBC;DRIVER=SQL Server;SERVER= Nom_Server;Integrated
Security=SSPI;" & _
"APP=Microsoft® Query;DATABASE= Nom_Base;Trusted_Connection=Yes", _
Destination:=xsTransfert.Range("A1"))
.CommandText = "Nom_Procedure_stockée" ' ou requete SELECT
.Name = "nom_feuille_excel"
.FieldNames = True
.RowNumbers = True
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = Excel.XlCellInsertionMode.xlOverwriteCells
.SavePassword = False
.SaveData = False
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.Refresh(BackgroundQuery:=False)
End With
' affichage
xlApp.Visible = True
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
Comment modifier le time out d'une requête
Les classes xxxCommand (sous entendu SqlCommand, OleDbCommand, etc.) possède la propriété CommandTimeout pour définir le temps maximum que pourra prendre la requête.
Dim maCommand As SqlCommand = New SqlCommand("SELECT * FROM MaTable")
' Par défaut, CommandTimeout vaut 30 secondes
Console.WriteLine("Temps avant Timeout : {0}", maCommand.CommandTimeout)
' Met le Timeout à 10 secondes
maCommand.CommandTimeout = 10
Console.WriteLine("Temps avant Timeout : {0}", maCommand.CommandTimeout)
' Permet de ne pas générer de Timeout
maCommand.CommandTimeout = 0
Quelle est la différence entre les modes connecté et déconnecté
Mode connecté
Ce mode permet à un client de se connecter à un serveur de base de données et tant que le client ne fermera pas la connexion, le serveur se souviendra de lui. Lorsque l'on désirera récupérer des informations (SELECT), on les recevra au compte-goutte, c'est-à-dire une par une.
Mode déconnecté
Le but de ce mode est de récupérer en un bloc une portion de la base de données afin d'effectuer des traitements en local sur la machine du client. On aura donc une ouverture de connexion à la base de données, la récupération en un seul bloc du résultat puis la fermeture de la connexion.
Comment créer une connexion à une base de données via Visual Studio
Allez dans le menu Tools et sélectionnez Connect to Database...
Vous pourrez tester une connexion à n'importe quel type de base de données en spécifiant le type de source de données, le provider, le nom du serveur ou du fichier, le mot de passe, etc.
|
| Commentaires des visiteurs : |
|