直接用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. python 生成器推导式与列表推导式的区别

    生成器表达式现用现生成,列表推导式一次性生成静态数据 L = [2, 3, 5, 7] L2 = (x**2+1 for x in L) it = iter(L2) print(next(it)) L ...

  2. Android:Activity & Intent

    参考:<第一行代码:Android> 郭霖(著)   2.2 Activity的基本用法 隐藏标题栏 在AndroidManifest.xml中配置,作为全局配置,在所有Activity范 ...

  3. IOI2002 POJ1054 The Troublesome Frog 讨厌的青蛙 (离散化+剪枝)

    Description In Korea, the naughtiness of the cheonggaeguri, a small frog, is legendary. This is a we ...

  4. POJ3696 The Windy's 【网络流】

    #include<iostream> #include<vector> #include<cstring> #include<algorithm> #i ...

  5. WPF/UWP 绑定中的 UpdateSourceTrigger

    在开发 markdown-mail 时遇到了一些诡异的情况.代码是这么写的: <TextBox Text="{Binding Text, Mode=TwoWay}"/> ...

  6. 字符编码:ASCII,Unicode和UTF-8

    字符编码是计算机技术的基石,想要熟练使用计算机,就必须懂得一点字符编码的知识. 1. ASCII码 我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串.每一个二进制位(bit)有0和1两 ...

  7. Java Garbage Collection

    在C/C++中,需要自己负责object的creation 和 destruction. 如果忘记了destruction, 就容易出现OutOfMemoryErrors. Java中会有GC直接处理 ...

  8. JS脚本不能运行

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/moqiang02/article/details/25898295 这段时间在做前端的动态页面,出了 ...

  9. smarty缓存的使用

    <?php require './smarty/Smarty.class.php'; $sm = new Smarty; //$sm->force_compile = true; $sm- ...

  10. Markdown语法简单介绍

    Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式. 一.标题 # 这是标题一 ## 这是标题二 ### 这是标题三 #### 这是标题 ...