6

看起来 TSQLConnection 只连接到现有数据库,我找不到另一个允许我向数据库服务器发送命令的组件。

我将 Delphi 2009 与 Firebird 和 MSSQL 一起使用。

一个想法是连接到系统数据库(例如 MSSQL 中的 master 或 tempdb),然后将创建命令发送到服务器。这可能是 MSSQL 的一个选项,但我不确定 Firebird。

我也知道 Delphi 2009 中的新 DBX 元数据,但我找不到使用它创建数据库的方法。我发现的所有示例都是修改现有数据库。

4

6 回答 6

3

是的你可以。dbExpress 现在包括一组功能强大的元数据类来实现这一点。

Steve Shaughnessy在这里做了一个很好的介绍。

于 2008-12-30T19:05:23.060 回答
0

Erick 如果您使用 Devart 驱动程序,您可以在没有 databasename 参数的情况下连接并发送 t-sql create database 命令。

于 2010-12-21T11:26:03.987 回答
0

Delphi 中包含的 dbExpress 使用“最小公分母”策略。通过本机驱动程序提供的查询统计信息等信息在 dbExpress 中是不可见的。(也许我应该问一个问题,比如“替代 dbExpress 实现中的哪个特性让你切换了?”)

于 2011-01-09T13:54:25.233 回答
-2

您可以使用标准 TSQLQuery 在两个数据库上执行“CREATE DATABASE ...”。

请注意,这两者之间的语法不同。由于 dbx 是轻量级库,因此可能永远不会完全支持此 SQL 和 DB 特定操作。它给你留下了 SQL。

于 2008-12-30T13:03:54.100 回答
-2

Delphi 2007/2009 附带 DBX4。您可以使用那里的低级结构以编程方式创建数据库。在看dbxcommons.pas

于 2009-06-05T12:44:16.493 回答
-3

您可以通过在任何服务器(甚至是 ms-access 文件)上打开的任何连接(ADO、OLEDB、ODBC 等)发送“CREATE DATABASE”脚本,只要它遵循特定的服务器 DDL 语法即可。

于 2008-12-30T14:33:13.327 回答