Мне нужно создать файл Excel с нуля в VB.NET, используя DataTable от asp.net.Я могу сделать это для конкретного файла, но я не знаю, как это сделать для общей базы данных.То есть, где я использую «CREATE TABLE ...», я не знаю, как сказать ему, какие типы использовать для данных в таблице.
DataTable является производным от базы данных FoxPro.(Я не знаю, имеет ли это значение.)
Я вызываю таблицу, подобную следующей:
<%
return_value = make_excel( sql_table, excel_filename)
%>
make_excel определяется как
Option Explicit On
'Option Strict On
Imports System
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.Page
Imports System.IO
Imports Microsoft.VisualBasic
Imports System.Diagnostics
Imports System.Data
Imports System.Data.OleDb
Public Class clsCommon
Inherits Page
' buncha other stuff defined in here.
Public Shared Function make_excel(ByVal sqlTable As DataTable, ByVal xls_fn As String) As Boolean
Dim conn As System.Data.OleDb.OleDbConnection
Dim ds As System.Data.DataSet
Dim cmd As New System.Data.OleDb.OleDbCommand()
conn = New System.Data.OleDb.OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;Data Source='" & xls_fn & "';Extended Properties=Excel 8.0;")
conn.Open()
cmd.Connection = conn
cmd.CommandText = "CREATE TABLE MyTable ( Admin char(20), first_name char(20));"
cmd.ExecuteNonQuery()
cmd.CommandText = "INSERT INTO MyTable ( Admin, first_name ) VALUES ('true', 'Bob')"
cmd.ExecuteNonQuery()
conn.Close()
Return True
End Function
End Class
Что янужно иметь возможность выполнить это через значения в sqlTable выше, проверить их тип и затем собрать sql для их записи.Указатели