直接用SQL语句把DBF导入SQLServer   在SQLServer中执行 SELECT * into bmk FROM OpenDataSource( ’Microsoft.Jet.OLEDB.4.0’,’Data Source=”e:share”;User ID=Admin;Password=;Extended properties=dBase 5.0’)...bmk 这样就可以把e:share中的bmk.dbf表导入到Sqlserver中, 速度是最快的

----------------------------

DBF ----> SQL SERVER drop table dbf SELECT * into dbf FROM OpenDataSource('Microsoft.Jet.OLEDB.4.0', 'Data Source="E:SuperDataSuperDate_停电预演rundataEngine东海工程合并";User ID=;Password=;Extended properties=dBase 5.0')...dbf go

------------------------------------------------------成功

EXCEL ----> SQL SERVER

SELECT * INTO YourTableName FROM OPENROWSET('MSDASQL.1', 'driver=Microsoft Excel Driver (*.xls);DBQ=D:ExcelBook2.xls', 'select * from [sheet1$]')

------------------------------------------------成功

Access ---->SQL Server INSERT INTO access SELECT * into access FROM opendatasource( 'Microsoft.Jet.OLEDB.4.0','Data Source="D:MapX_Web.mdb";Jet OLEDB:Database Password=')...Layer_StyleIndex ----------------------------------------------成功

function TForm1.Boolean_Excel_To_SQLServer_UsingStringList(p_Str_MachineName : String; p_Str_DataBaseName : String; p_Str_UserName : String; p_Str_Password : String; p_StringList_FileNameAndPath : TStringList; p_ProgressBar : TProgressBar ) : Boolean; var // false : 操作失败 m_ADOConnection : TADOConnection; m_Str_FileNameAndPath : String; m_Str_FileName : String; m_Str_PathName : String; m_StrSQL : String; m_StrSQL1 : String; m_Integer_ItemPos : Integer; begin m_ADOConnection := TADOConnection.Create(nil); m_ADOConnection.ConnectionString := 'Provider=SQLOLEDB.1;' + 'Password=' + p_Str_Password + ';' + 'Persist Security Info=True;' + 'User ID=' + p_Str_UserName + ';' + 'Initial Catalog=' + p_Str_DataBaseName + ';' + 'Data Source=' + p_Str_MachineName; m_ADOConnection.LoginPrompt := false; try //连接数据库服务器 m_ADOConnection.Connected := true; except ShowMessage('Boolean_DBF_To_SQLServer()::数据库连接出错!'); Result := false; Exit; end;

if p_ProgressBar <> nil then begin p_ProgressBar.Min := 0; p_ProgressBar.Max := p_StringList_FileNameAndPath.Count; end; for m_Integer_ItemPos := 1 to p_StringList_FileNameAndPath.Count do begin m_Str_FileNameAndPath := p_StringList_FileNameAndPath.Strings[m_Integer_ItemPos - 1]; m_Str_FileName := Self.String_GetFileNameFromOneFullFileScript(m_Str_FileNameAndPath); m_Str_FileName := Self.String_DeleteExtNameForOneFileName(m_Str_FileName); m_Str_PathName := Self.String_GetFilePathFromOneFullFileScript(m_Str_FileNameAndPath); m_StrSQL := 'drop table ' + m_Str_FileName; try //删除SQLSERVER中对应的原有表(如果有) m_ADOConnection.Execute(m_StrSQL); except end; { m_StrSQL := 'SELECT * INTO ' + m_Str_FileName + ' FROM OpenDataSource(''Microsoft.Jet.OLEDB.4.0'', ' + '''Data Source="' + m_Str_PathName + '";User ID=;Password=;Extended properties=dBase 5.0'')...' + m_Str_FileName; } { SELECT * INTO YourTableName FROM OPENROWSET('MSDASQL.1', 'driver=Microsoft Excel Driver (*.xls);DBQ=D:ExcelBook2.xls', 'select * from [sheet1$]') } m_StrSQL := 'SELECT * INTO ' + m_Str_FileName + ' FROM ' + 'OPENROWSET(''MSDASQL.1'', ''driver=Microsoft Excel Driver (*.xls);DBQ=' + m_Str_PathName + m_Str_FileName + '.xls'',' + '''select * from [sheet1$]'')'; { m_StrSQL1 := 'SELECT * INTO Book2 FROM ' + 'OPENROWSET(''MSDASQL.1'', ''driver=Microsoft Excel Driver (*.xls);DBQ=D:ExcelBook2.xls'',' + '''select * from [sheet1$]'')'; } try m_ADOConnection.Execute(m_StrSQL); except ShowMessage(m_Str_FileName + ' 表 上传出错!'); Result := false; Exit end; if p_ProgressBar <> nil then begin p_ProgressBar.Position := m_Integer_ItemPos; end; end;

Result := true; end;

function TForm1.Boolean_DBF_To_SQLServer_UsingStringList(p_Str_MachineName : String; //机器名 p_Str_DataBaseName : String; //数据库名 p_Str_UserName : String; //用户名 p_Str_Password : String; //用户密码 p_StringList_FileNameAndPath : TStringList; //文件名和路径列表 p_ProgressBar : TProgressBar //进度条 ) : Boolean; // true : 操作成功 var // false : 操作失败 m_ADOConnection : TADOConnection; m_Str_FileNameAndPath : String; m_Str_FileName : String; m_Str_PathName : String; m_StrSQL : String; m_Integer_ItemPos : Integer; begin m_ADOConnection := TADOConnection.Create(nil); m_ADOConnection.ConnectionString := 'Provider=SQLOLEDB.1;' + 'Password=' + p_Str_Password + ';' + 'Persist Security Info=True;' + 'User ID=' + p_Str_UserName + ';' + 'Initial Catalog=' + p_Str_DataBaseName + ';' + 'Data Source=' + p_Str_MachineName; m_ADOConnection.LoginPrompt := false; try //连接数据库服务器 m_ADOConnection.Connected := true; except ShowMessage('Boolean_DBF_To_SQLServer()::数据库连接出错!'); Result := false; Exit; end;

if p_ProgressBar <> nil then begin p_ProgressBar.Min := 0; p_ProgressBar.Max := p_StringList_FileNameAndPath.Count; end; for m_Integer_ItemPos := 1 to p_StringList_FileNameAndPath.Count do begin m_Str_FileNameAndPath := p_StringList_FileNameAndPath.Strings[m_Integer_ItemPos - 1]; m_Str_FileName := Self.String_GetFileNameFromOneFullFileScript(m_Str_FileNameAndPath); m_Str_FileName := Self.String_DeleteExtNameForOneFileName(m_Str_FileName); m_Str_PathName := Self.String_GetFilePathFromOneFullFileScript(m_Str_FileNameAndPath); m_StrSQL := 'drop table ' + m_Str_FileName; try //删除SQLSERVER中对应的原有表(如果有) m_ADOConnection.Execute(m_StrSQL); except end; m_StrSQL := 'SELECT * INTO ' + m_Str_FileName + ' FROM OpenDataSource(''Microsoft.Jet.OLEDB.4.0'', ' + '''Data Source="' + m_Str_PathName + '";User ID=;Password=;Extended properties=dBase 5.0'')...' + m_Str_FileName; try m_ADOConnection.Execute(m_StrSQL); except ShowMessage(m_Str_FileName + ' 表 上传出错!'); Result := false; Exit end; if p_ProgressBar <> nil then begin p_ProgressBar.Position := m_Integer_ItemPos; end; end;

Result := true; end;

解决“您试图从目录中执行CGI、ISAPI 或其他可执行程序...”的问题 本人今日在实验室调试一网页,使用WIN2003 INTERNET信息服务(IIS)管理器,在建立一个网站虚拟目录,结果浏览网页时出现错误,错误提示信息如下: ---------------------------------------------------------

该页无法显示

您试图从目录中执行 CGI、ISAPI 或其他可执行程序,但该目录不允许执行程序。

--------------------------------------------------------------------------------

请尝试以下操作:

如果您认为该目录应该允许执行访问权限,请与网站管理员联系。 HTTP 错误 403.1 - 禁止访问:执行访问被拒绝。 Internet 信息服务 (IIS)

--------------------------------------------------------------------------------

技术信息(为技术支持人员提供)

转到 Microsoft 产品支持服务并搜索包括“HTTP”和“403”的标题。 打开“IIS 帮助”(可在 IIS 管理器 (inetmgr) 中访问),然后搜索标题为“配置 ISAPI 扩展”、“配置 CGI 应用程序”、“使用网站权限保护站点”和“关于自定义错误消息”的主题。 在 IIS 软件开发工具包 (SDK) 或 MSDN Online Library 中,搜索标题为“Developing ISAPI Extensions”、“ISAPI and CGI”和“Debugging ISAPI Extensions and Filters”的主题。 -------------------------------------------------------------------------------------------------------

经过调试,发觉解决办法其实很简单。解决办法如下:

单击操作系统的开始--程序--管理工具--Interneter服务器管理,在IIS中选择您的站点然后右键--属性,在“主目录”选项中,查看“执行权限”是否设置为“无”,这里改成“纯脚本”保存即可。

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/lanmao100/archive/2009/03/18/4000010.aspx

直接用SQL语句把DBF导入SQLServer的更多相关文章

  1. (转载)直接用SQL语句把DBF导入SQLServer

    告诉大家一个直接用SQL语句把DBF导入SQLServer,以及txt导入Access的方法,大家抛弃BatchMove吧来自:碧血剑告诉你一个最快的方法,用SQLServer连接DBF在SQLSer ...

  2. 解决 微信包含emoji表情的昵称,直接用sql语句可以写入而在yii2框架写却写不成功的 问题

    背景: 首先是emoji表情写入不成功,在网上查了许多资料,包括配置mysql,重启mysql等等,这样之后发现还是写入失败. 将sql语句复制出来,直接粘贴到mysql客户端执行,发现没问题.而通过 ...

  3. otl下直接用sql查询语句无法查询最新的记录的问题

    最近操作mysql数据库遇到了一个很奇葩的问题,由于我的程序里需要实时读取最新的记录,所以我在程序中采用定时器每20秒读一遍数据库,但是发现除了第一次初始化读取数据库成功以外,后面最新的记录全部都读不 ...

  4. 同样的一句SQL语句在pl/sql 代码块中count 没有数据,但是直接用SQl 执行却可以count 得到结果

    pl/sql 代码块: SELECT count(distinct t2.so_nbr) INTO v_count2 FROM KFGL_YW_STEP_qd t2 WHERE t2.partitio ...

  5. dbf导入sqlserver的方法

    1. dbf导出为foxpro2.x. 2.打开excel,点击打开,选择dbase文件,选中第一步保存的文件. 3.另存为xls格式 4.使用sql的dts导入xls.

  6. sql语句(Oracle和sqlserver)

    查询表的首句:(Oracle) select * from (select a.*, rownum as rn from tab_name a order by col )where rn = 1 o ...

  7. 用SQL语句从电脑导入图片到数据库

    --创建图片表 CREATE TABLE W_PIC ( ID INT, --编号 WPATH ), --完整路径 PIC ), --图片名称,不带后缀 img image --图片内容 ) --图片 ...

  8. 3种SQL语句分页写法

    在开发中经常会使用到数据分页查询,一般的分页可以直接用SQL语句分页,当然也可以把分页写在存储过程里,下面是三种比较常用的SQL语句分页方法,下面以每页5条数据,查询第3页为例子: 第一种:使用not ...

  9. 《万能数据库查询分析器》实现使用SQL语句直接高效地访问文本文件

    <万能数据库查询分析器>实现使用SQL语句直接高效地访问文本文件 马根峰 (广东联合电子服务股份有限公司, 广州 510300) 摘要    用SQL语句来直接访问文本文件?是在做梦吗? ...

随机推荐

  1. 【剑指offer】栈的压入弹出序列,C++实现(举例)

    原创文章,转载请注明出处! 本题牛客网地址 博客文章索引地址 博客文章中代码的github地址 1.题目 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为第一个序列的出栈序列.注意 ...

  2. Linux下定时任务Crontab的使用

    使用crontab你可以在指定的时间执行一个shell脚本或者一系列Linux命令.例如系统管理员安排一个备份任务使其每天都运行   入门 # crontab –e 这样可以已编辑模式打开个人的cro ...

  3. 可能是 BJOI2019 Day1 题解?

    T1 给一个有空白字符的串 $S$,和若干模板串 $X_i$,初始 $Ans = 1$,每当一个模板串在 $S$ 中作为子串出现时,$Ans$ 会乘以 $X_i$ 的权值 $Val_i$,然后如果 $ ...

  4. 线性回归 Linear regression(2)线性回归梯度下降中学习率的讨论

    这篇博客针对的AndrewNg在公开课中未讲到的,线性回归梯度下降的学习率进行讨论,并且结合例子讨论梯度下降初值的问题. 线性回归梯度下降中的学习率 上一篇博客中我们推导了线性回归,并且用梯度下降来求 ...

  5. HihoCoder1164 随机斐波那契(概率DP)

    描述 大家对斐波那契数列想必都很熟悉: a0 = 1, a1 = 1, ai = ai-1 + ai-2,(i > 1). 现在考虑如下生成的斐波那契数列: a0 = 1, ai = aj + ...

  6. bzoj 4811 由乃的OJ

    bzoj 4811 由乃的OJ 考虑树链剖分. 树剖后用一颗线段树维护一段连续区间,类似于一个函数,各位上进入 \(0/1\) ,输出的数字分别是什么.注意到最多只有 \(64\) 位,可以用一个 \ ...

  7. koa2 中间件里面的next到底是什么

    koa2短小精悍,女人不爱男人爱. 之前一只有用koa写一点小程序,自认为还吼吼哈,知道有一天某人问我,你说一下 koa或者express中间件的实现原理.然后我就支支吾吾,好久吃饭都不香. 那么了解 ...

  8. Scala的=>作用

    举例: var increase = (x: Int) => x + 1 increase(10) res0: Int = 11 类似于转化符号,=>指明这个函数把左边的东西(任何整数x) ...

  9. linux压缩打包等

    删除 rm -rf 目录 tar -zcvf /home/xahot.tar.gz /xahot tar -zcvf 打包后生成的文件名全路径 要打包的目录 例子:把/xahot文件夹打包后生成一个/ ...

  10. 给select增加placeholder技巧

    转自:http://stackoverflow.com/questions/5805059/how-do-i-make-a-placeholder-for-a-select-box/8442831 使 ...