VFP问题:打开和关闭数据库

VFP问题:打开和关闭数据库,第1张

你先了解下VFP中数据库的 *** 作:

1、创建并打开一个数据库。

CREATE DATABASE [DatabaseName | ]

参数

[ DatabaseName| ]

指定要创建或打开(创建对话框)的数据库名,可以指定一个数据库名及其保存位置。忽略这些参数也会打开创建(Create)对话框。数据库文件以扩展名 dbc 保存。注意:

如果 SET SAFETY 命令设置为 ON,且在用户指定的路径中已经存在同名的数据库,Visual FoxPro 将提示用户为数据库指定一个不同的路径或名称。

2、打开数据库。

OPEN DATABASE [FileName | ] [EXCLUSIVE | SHARED] [NOUPDATE] [VALIDATE]

参数

FileName

指定要打开的数据库名。如果没有为文件指定扩展名,则 Visual FoxPro 自动指定为 dbc 扩展名。如果省略 FileName,则显示打开对话框。可以指定路径名作为数据库名的一部分。 注意:

如果磁盘或目录名中包含叹号(!),则 Visual FoxPro 将不能识别路径名。

3、关闭各种类型的文件。

CLOSE [ALL | ALTERNATE | DATABASES [ALL] | DEBUGGER | FORMAT | INDEXES

| PROCEDURE | TABLES [ALL]]

参数

ALL

关闭当前及所有工作区中所有打开的数据库, 表, 和索引,并选择 1 号工作区。CLOSE ALL 也关闭任何使用 FCREATE( ) 和 FOPEN( ) 低级文件函数打开的文件,以及任何使用 SET PROCEDURE 打开的过程文件。CLOSE ALL 不关闭使用 SET PRINT 打开的文件。CLOSE ALL 也关闭:

表单设计器

“项目管理器”

标签设计器

报表设计器

查询设计器

CLOSE ALL 不关闭这些:

命令窗口

调试(Debug)窗口

帮助

“跟踪”窗口

CLOSE ALTERNATE

关闭使用 SET ALTERNATE 打开的替代文件。

CLOSE DATABASES [ALL]

关闭当前数据工作期中的当前数据库和表。如果没有当前数据库,所有当前数据工作期的所有工作区中打开的自由表, 索引, 和格式文件都被关闭,并选择 1 号工作区。 注意:NEW

如果数据库在“项目管理器”的节点中展开或在一个运行的表单的私有工作期中被打开,则在“命令”窗口中使用 CLOSE DATABASES 命令不能关闭此数据库。在此情况下,直至“项目管理器”关闭它或使用它的表单关闭它,否则该数据库一直是打开的。

指定 ALL 关键字,则关闭当前和所有非活动数据工作期中的以下项目,并选择 1 号工作区:

所有打开的数据库及其中的表, 除了在其他数据工作期中当前选择的数据库 或 在其他数据工作期中打开的数据库及其中的表 以外。

所有打开的自由表。

所有工作区中的全部索引及格式文件。

CLOSE DEBUGGER

关闭 Visual FoxPro 调试器。

CLOSE FORMAT

关闭使用 SET FORMAT 命令打开的当前工作区中的格式文件。

CLOSE INDEXES

关闭当前工作区中所有打开的索引文件(只有 单项索引idx 和 独立复合索引cdx 文件 二者) 。不关闭结构复合索引(与表自动同时打开的 cdx 文件)。

CLOSE PROCEDURE

关闭使用 SET PROCEDURE 打开的过程文件。

CLOSE TABLES [ALL]

关闭当前选择数据库的所有表。如果没有已打开的数据库,CLOSE TABLES 关闭所有工作区中的所有自由表。包含 ALL 将关闭所有数据库中的所有表,及所有自由表。所有数据库仍保持打开。当执行一个事务时,不应执行 CLOSE TABLES 命令;否则 Visual FoxPro 将产生一条错误信息。

// 之所以要使用下面这条语句,是因为要使用MySQL的驱动,所以我们要把它驱动起来,

// 可以通过ClassforName把它加载进去,也可以通过初始化来驱动起来,下面三种形式都可以

ClassforName("commysqljdbcDriver");// 动态加载mysql驱动

// or:

// commysqljdbcDriver driver = new commysqljdbcDriver();

// or:

// new commysqljdbcDriver();

在查询分析器执行这两句,然后在执行你的程序,看看效果。

ALTER DATABASE ceshi SET OFFLINE WITH ROLLBACK IMMEDIATE

ALTER DATABASE ceshi SET ONLINE

这两句不要放在高级语言里。

从错误信息来看,是缺少SQLServer的JDBC驱动包,可以通过如下方式解决:

1、如果是maven程序,在pom文件中加入sqlserver驱动

<dependency>

<groupId>commicrosoftsqlserver</groupId>

<artifactId>mssql-jdbc</artifactId>

<version>731jre12-preview</version>

<scope>test</scope>

</dependency>

2、如果不是maven程序,百度搜索jdbc sqlserver jar ,然后把下载的jar引入到程序中

以上就是关于VFP问题:打开和关闭数据库全部的内容,包括:VFP问题:打开和关闭数据库、javaweb连接数据库的问题、恢复sql数据库报错:已将数据库上下文更改为'master'等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9725271.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存