[英]Convert SQL Query to vb.net
可以幫助我在VB.NET中運行SQL查詢。這是將表數據轉換為csv的查詢
USE newdb
GO
-- Check Table Column
SELECT *
FROM accountexample
GO
-- Get CSV values
SELECT SUBSTRING(
(SELECT ' ' + s.BPl + ',' + s.Lo + ',' + s.Ltion + ',' + s.Ite + ',' + s.HNO + ',' + s.QNo + ',' + s.Country + ',' + s.STATE + ',' + s.Rem + CHAR(10)
FROM accountexample s
ORDER BY s.BPl
FOR XML PATH('')),2,200000) AS CSV
GO
首先選擇所需的記錄到數據集中
然后使用以下函數將數據集轉換為CSV文件。
將數據集轉換為CSV的功能
Sub SetDataTable_To_CSV(ByVal dtable As DataTable, ByVal path_filename As String, ByVal sep_char As String)
Dim writer As System.IO.StreamWriter
Try
writer = New System.IO.StreamWriter(path_filename)
Dim _sep As String = ""
Dim builder As New System.Text.StringBuilder
For Each col As DataColumn In dtable.Columns
builder.Append(_sep).Append(col.ColumnName)
_sep = sep_char
Next
writer.WriteLine(builder.ToString())
For Each row As DataRow In dtable.Rows
_sep = ""
builder = New System.Text.StringBuilder
For Each col As DataColumn In dtable.Columns
builder.Append(_sep).Append(row(col.ColumnName))
_sep = sep_char
Next
writer.WriteLine(builder.ToString())
Next
Catch ex As Exception
Finally
If Not writer Is Nothing Then writer.Close()
End Try
End Sub
摘自以下鏈接
http://redsouljaz.com/2010/06/03/vb-net-set-data-table-to-csv-file/
如果您想通過VB.net與我的SQL一起使用。
然后您可以創建存儲過程
CREATE PROC ConvertCSV
AS
BEGIN
SELECT SUBSTRING(
(SELECT ' ' + s.BPl + ',' + s.Lo + ',' + s.Ltion + ',' + s.Ite + ',' + s.HNO + ',' + s.QNo + ',' + s.Country + ',' + s.STATE + ',' + s.Rem + CHAR(10)
FROM accountexample s
ORDER BY s.BPl
FOR XML PATH('')),2,200000) AS CSV
END
然后從vb.net調用此過程
Dim con As New SqlConnection("Data Source=<datasource>;Initial Catalog=<databasename>;User ID=<username>;Password=<password>")
con.Open()
Dim cmd As New SqlCommand("ConvertCSV", con)
Try
cmd.CommandType = CommandType.StoredProcedure
cmd.ExecuteNonQuery()
Finally
If cmd IsNot Nothing Then cmd.Dispose()
If cn IsNot Nothing AndAlso cn.State <> ConnectionState.Closed Then cn.Close()
End Try
希望這可以幫助
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.