主题:[讨论]看看是否还有人对vfp+sql2000的c/s系统有兴趣
agt澳
[专家分:840] 发布于 2009-12-20 08:58:00
[color=0000FF]根据yangjie008
手把手教你学vfp+sql2000的c/s系统吧!改编[/color][size=3]
一、基本准备
1、安装MSDE(免费普及版)或SQL-Server2000等授权版;
简介MSDE
所谓MSDE,是英文Microsoft SQL Server Desktop Engine(微软SQL-Server数据引擎)的缩写,是微软发布的大型数据库SQL-Server的免费普及版
系统要求
支持的操作系统: Windows 2000; Windows 98; Windows ME; Windows NT; Windows Server 2003; Windows XP
166 MHz 或更快的 Intel Pentium 或兼容处理器
建议:一般在这里学vfp+sql2000的c/s系统用户,对vfp相对sql2000较熟练,所以一般采用vfp编程,所以用sql2000较少,建议安装MSDE(免费普及版)下载方便,无版权问题。
数据库MSDE下载(先到微软网站下载数据库MSDE)
http://www.microsoft.com/downloads/details.aspx?FamilyID=413744d1-a0bc-479f-bafa-e4b278eb9147&DisplayLang=zh-cn
2、安装VFP9。
3、会做一点vfp单机版的项目。
二、准备实施
今天就到这里,看看是否还有人对vfp+sql2000的c/s系统有兴趣?如有就继续写。[/size]
最后更新于:2009-12-20 09:00:00
回复列表 (共45个回复)
21 楼
agt澳 [专家分:840] 发布于 2009-12-28 17:09:00
[size=3][color=0000FF]通过vfp命令创建SQL库存数据库及相关数据表2[/color]
*!* 创建库存数据库名称:stock
*!* 数据库初始大小;文件大小自动增长,增长限制为为默认
*!* 数据库日志文件大小;文件大小自动增长,增长限制为默认
SQLEXEC(nConnHandle,"CREATE DATABASE stock;
ON PRIMARY ;
( NAME = stock _db_file,;
FILENAME = ' D:\database \ stock _db.mdf');
LOG ON ;
( NAME = stock _db_log_file,;
FILENAME = ' D:\database \ stock _db_log.ldf')")
?SQLEXEC(nConnHandle,"USE STOCK")
*!* 在库存数据库 STOCK 中建立以下数据表
*!*TABLE 材料类别
*!* 在库存数据库中建立以下数据表
*!*TABLE 材料类别
?SQLEXEC(nConnHandle,"CREATE TABLE 材料类别;
(类别ID VARCHAR(20) PRIMARY KEY NOT NULL,;
材料类别 varchar(50))")
SQLEXEC(nConnHandle,"sp_help 材料类别")
*!*table 库存
CSQL="CREATE TABLE [dbo].[库存]"
CSQL=CSQL+"([存货代码] [varchar] (20) PRIMARY KEY NOT NULL,;
[存货名称] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL,;
[类别id] [varchar] (20) COLLATE Chinese_PRC_CI_AS NOT NULL,"
CSQL=CSQL+"[规格] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL,;
[单位] [varchar] (20) COLLATE Chinese_PRC_CI_AS NULL,;
[货架] [varchar] (20) COLLATE Chinese_PRC_CI_AS NULL,"
CSQL=CSQL+"[数量] [float] NULL,;
[最高库存] [float] NULL,;
[最底库存] [float] NULL)"
?SQLEXEC(nConnHandle,csql)
SQLEXEC(nConnHandle,"sp_help 库存")
*!*table 供应商
SQLEXEC(nConnHandle,"create table 供应商;
(供应商ID varchar(20) PRIMARY KEY not null,;
供应商 varchar(50),;
联系电话 varchar(50))")
SQLEXEC(nConnHandle,"SP_HELP 供应商")
*!*table 入库表
SQLEXEC(nConnHandle,"create table 入库表;
(入库单号 varchar(20) PRIMARY KEY not null,;
总金额 float,;
入库日期 datetime,;
经手人 varchar(20),;
是否审核 bit,;
摘要 varchar(100))")
SQLEXEC(nConnHandle,"SP_HELP 入库表")
*!*table 入库材料明细表
CSQL="create table 入库材料明细表"
CSQL=CSQL+"(入库单号 varchar(20) foreign key references 入库表(入库单号) not null,;
存货代码 varchar(20) foreign key references 库存(存货代码) not null,;
供应商ID varchar(20) foreign key references 供应商(供应商ID) not null,"
CSQL=CSQL+"单价 float,单位 varchar(20),商量 float,金额 float,摘要 varchar(100),"
CSQL=CSQL+"CONSTRAINT PK_明细表 PRIMARY KEY (入库单号,存货代码,供应商ID))"
?SQLEXEC(nConnHandle,csql)
SQLEXEC(nConnHandle,"SP_HELP 入库材料明细表")
=SQLDISCONNECT(nConnHandle)
ELSE
MESSAGEBOX("连接失败"+chr(13)+chr(13)+;
' 要求四个字符型参数,'+chr(13)+chr(13)+;
'现参数名称、类型如下: '+chr(13)+chr(13)+;
'1.DSN: '+varTYPE(pszDSN)+chr(13)+chr(13)+;
'2.Database: '+varTYPE(cDatabase)+chr(13)+chr(13)+;
'3.Server: '+varTYPE(cServer)+chr(13)+chr(13)+;
'4.SaCode: '+varTYPE(cSaCode)+chr(13)+chr(13)+;
'请重新执行,并附准确的四个字符型参数。',0+64,"提示")
retu
ENDIF
ELSE
MESSAGEBOX(""+chr(13)+chr(13)+;
' 要求四个字符型参数,'+chr(13)+chr(13)+;
'现参数名称、类型如下: '+chr(13)+chr(13)+;
'1.DSN: '+varTYPE(pszDSN)+chr(13)+chr(13)+;
'2.Database: '+varTYPE(cDatabase)+chr(13)+chr(13)+;
'3.Server: '+varTYPE(cServer)+chr(13)+chr(13)+;
'4.SaCode: '+varTYPE(cSaCode)+chr(13)+chr(13)+;
'请重新执行,并附准确的四个字符型参数。',0+64,"提示")
retu
ENDIF [/size]
22 楼
ls_y041 [专家分:50] 发布于 2010-01-06 08:57:00
学习中,继续
23 楼
agt澳 [专家分:840] 发布于 2010-01-06 10:56:00
[color=0000FF][size=4]但是,我虽然自己的机器上测试通过了,我更想知道
其他人看了做了后的反馈.[/size][/color]
24 楼
MW_BO [专家分:1160] 发布于 2010-01-06 12:23:00
手中的活还没完。
有时间一定试一下楼主的。
25 楼
ls_y041 [专家分:50] 发布于 2010-01-06 14:56:00
我有空来测试,你有 QQ吗
26 楼
ls_y041 [专家分:50] 发布于 2010-01-06 16:20:00
以上都只是一个简单的,下面的关键的是如何写到服务器上的表中,个人认为是越简单越好,以上的这些好处理,不过可以更简单的
27 楼
agt澳 [专家分:840] 发布于 2010-01-06 19:42:00
[color=0000FF][size=4]QQ:agt-fi@qq.com[/size][/color]
[color=000080][size=5]欢迎更简便的方法,[/size][size=3]
[color=0000FF] 我的目的是通过讨论,让fox友用vfp解决前台编程问题,用sql解决后台数据库问题(既可做服务器数据库,又可以数据通过授权帐号的登录处理起到保密作用)[/size][/color][/color]
28 楼
ls_y041 [专家分:50] 发布于 2010-01-07 08:40:00
我也是在学习,不是高手,很基础的东西会一点,只是说你的这么多的代码很让人害怕
我的QQ:362924376你的号我找不到很高兴有你这样的好人在讲这个东西
29 楼
agt澳 [专家分:840] 发布于 2010-01-07 09:45:00
[color=0000FF][size=4] [u]我也是在学习,不是高手,很基础的东西会一点,只是说你的这么多的代码很让人害怕[/size][size=3][color=0000FF][color=FFFF00][/u]
[color=0000FF] 其实这么多的代码你有空就看,没空不看直接粘贴在vfp下运行就可以了,然后再慢慢理解程序的原理,方法对了就可以了不会很让人害怕的啊.[/color][/size][/color][/color][/color]
30 楼
agt澳 [专家分:840] 发布于 2010-01-10 15:39:00
[color=0000FF][size=4]QQ:agt-fi@qq.com[/size][/color]
[color=0000FF][u][size=4]看了手把手教你学vfp+sql2000的c/s系统吧!和你的贴子,试编一程序,在本人的计算机上运行正常,但在局域网的其他机子上无法连接上数据,应如何设置,望老兄不吝赐教。谢谢! [/size][/u][/color]
[size=3]但在局域网的其他机子上无法连接上数据,较专业的说法应该是:在局域网的其他机子上无法连接上sqlserver数据库,
1.首先sqlserver数据库的主机服务器名先搞清,
2.在局域网的其他机子上的机器名不要与主机服务器名相同
3.确认局域网的其他机子能与主机服务器连通
4.在局域网的其他机子上**连接到服务器的名与主机服务器名相同
(SQL Server本地服务器:'(local)'此处改为:SQL Server本地服务器:'主机服务器名')
5.并注意数据库:MASTER、用户:SA、口令:AGT等的一致性.[/size]
我来回复