问题描述
我正在尝试读取 dbf 文件。
代码:
$cmd = New-Object System.Data.OleDb.OleDbConnection
$cmd.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;DataSource=E:\DATA\MailTvm\sample.dbf;Extended Properties=dBASE IV;User ID=Admin;"
$cmd.Open
$sqlCmd = $cmd.CreateCommand()
$query = "select name from sample"
$sqlCmd.CommandText = $query
$adp = New-Object System.Data.OleDb.OleDbDataAdapter($sqlCmd,$cmd)
$data = New-Object System.Data.DataSet
$adp.Fill($data)
$data.Tables
$cmd.Close()
Exception calling "Open" with "0" argument(s): "Could not find installable ISAM." At E:\DATA\Script_old\dbfread.ps1:4 char:1
+ $Conn.open()
+ ~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [],MethodInvocationException
+ FullyQualifiedErrorId : OleDbException
Exception calling "Fill" with "1" argument(s): "Could not find installable ISAM." At E:\DATA\Script_old\dbfread.ps1:8 char:1
+ $da.Fill($dt) |Out-Null
+ ~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [],MethodInvocationException
+ FullyQualifiedErrorId : OleDbException
RemotingFormat : Xml SchemaSerializationMode : IncludeSchema CaseSensitive : False defaultviewManager : {System.Data.DataViewManagerListItemTypeDescriptor} EnforceConstraints : True DataSetName : NewDataSet Namespace : Prefix : ExtendedProperties : {} HasErrors : False IsInitialized : True Locale : en-IN Site : Relations : {} Tables : {} Container : DesignMode : False ContainsListCollection : True
MemberType : Method OverloadDeFinitions : {void open(),void IDbConnection.open()} TypeNameOfValue : System.Management.Automation.PSMethod Value : void open(),void IDbConnection.open() Name : Open isinstance : True
Data : System.Data.DataSet Exception calling "Fill" with "1" argument(s): "Could not find installable ISAM." At E:\DATA\Script_old\dbfread.ps1:24 char:1
+ $adp.Fill($data)
+ ~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [],MethodInvocationException
+ FullyQualifiedErrorId : OleDbException
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)