A. VFP中能怎么实现远程创建SQL server 2000的数据库或表
SQLSTRINGCONNECT( ) 函数
用连接串建立和数据源的连接。
SQLSTRINGCONNECT([lShared] | [cConnectString [, lSharable]])
示例
以下示例展示如何不带数据源名地调用 SQLSTRINGCONNECT( ) 函数。
lcDSNLess="driver = SQL Server;server=<servername>;uid=<userid>;pwd=<password>"
-或者-
lcDSNLess="driver = {SQL Server};server=<servername>;uid=<userid>;pwd=<password>"
-或者-
lcDSNLess="DRIVER = {SQL Server};" ;
+ "SERVER=<servername>;" ;
+ "UID=<userid>;" ;
+ "PWD=<password>;" ;
+ "DATABASE=PUBS;" ;
+ "WSID=<machine name or userid>;" ;
+ "APP=MicroX(R) Sample App"
lnConnHandle=SQLSTRINGCONNECT(m.lcDSNLess)
创建数据库,先可以连接master数据库,再进行创建。建新表下面参考:
TEXT TO strSQL NOSHOW PRETEXT 7
CREATE TABLE [dbo].[TabMaterialSellDetail] (
[detailId] [int] PRIMARY KEY NOT NULL ,
[detailSn] [nvarchar] (20) COLLATE Chinese_PRC_CI_AS NULL ,
[detailMaterialId] [int] NULL ,
[detailSellCount] [numeric](18, 2) NULL ,
[detailSellPrice] [numeric](18, 6) NULL ,
[detailSellMoney] [numeric](18, 2) NULL ,
[detailDate] [datetime] NULL ,
[detailStorage] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[detailMemo1] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[detailMemo2] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[detailMemo3] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[detailMemo4] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[detailMemo5] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[detailMemo6] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[detailMemo7] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[detailMemo8] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[detailMemo9] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[detailMemo10] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[detailMemo] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[detailSort] [int] NULL
) ON [PRIMARY]
ENDTEXT
SQLEXEC(con, strSQL) &&con是连接句柄
B. 在VFP中怎么样用SQL语言创建表啊。我怎样写都是语法错误啊,谁帮我下吧。
在VFP中上述语句共有两个问题1.”寝室管理”后的“(”不是半角的,所以提示错误。2.将“(”改为半角后可以创建表,但系统仍提示“该表在非.dbc表中不可用”,主要是针对primaty
key和not
null而言,如在创建该表之前先创建一个数据库即可,如create
database
aaa,再运行上述语句即可。