minhkhai > 01-07-22, 05:11 AM
ongke0711 > 01-07-22, 11:11 AM
(01-07-22, 05:11 AM)minhkhai Đã viết: Em có đoạn code Powershell trong đó cài câu query là khi chạy có thể kết xuất dữ liệu từ SQL database sang file csv.
Em muốn hỏi các bác có cách nào tương tự để kết xuất từ accessdb sang file csv mà không cần mở MS Access không ạ (ví dụ dùng Powershell như nói trên)
#db path
$DBPath = "\\Mac\Home\Downloads\20.accdb"
#SQL statement to run
$SQL = "select MeetingT.* from MeetingT"
#Output file location
$Output = "C:\test.csv"
#Connection
$Con= New-Object -TypeName System.Data.OleDb.OleDbConnection
#Connection string
$con.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source= $path"
#create command and fill dataset
$ConCommand= $Con.CreateCommand()
$ConCommand.CommandText = $SQL
$OAdapt = New-Object -TypeName System.Data.OleDb.OleDbDataAdapter $ConCommand
$DS = New-Object -TypeName System.Data.DataSet
$OAdapt.Fill($DS)
#Export
$DS.Tables[0] | export-csv $Output -NoTypeInformation
$Con.Close()
minhkhai > 08-07-22, 07:45 PM
(01-07-22, 11:11 AM)ongke0711 Đã viết:(01-07-22, 05:11 AM)minhkhai Đã viết: Em có đoạn code Powershell trong đó cài câu query là khi chạy có thể kết xuất dữ liệu từ SQL database sang file csv.
Em muốn hỏi các bác có cách nào tương tự để kết xuất từ accessdb sang file csv mà không cần mở MS Access không ạ (ví dụ dùng Powershell như nói trên)
Thì cũng dùng ADO để kết nối để lấy dữ từ Table hoặc Query Access.
Mã:#db path
$DBPath = "\\Mac\Home\Downloads\20.accdb"
#SQL statement to run
$SQL = "select MeetingT.* from MeetingT"
#Output file location
$Output = "C:\test.csv"
#Connection
$Con= New-Object -TypeName System.Data.OleDb.OleDbConnection
#Connection string
$con.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source= $path"
#create command and fill dataset
$ConCommand= $Con.CreateCommand()
$ConCommand.CommandText = $SQL
$OAdapt = New-Object -TypeName System.Data.OleDb.OleDbDataAdapter $ConCommand
$DS = New-Object -TypeName System.Data.DataSet
$OAdapt.Fill($DS)
#Export
$DS.Tables[0] | export-csv $Output -NoTypeInformation
$Con.Close()