回 帖 发 新 帖 刷新版面

主题:[讨论]看看是否还有人对vfp+sql2000的c/s系统有兴趣

[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]

回复列表 (共45个回复)

21 楼

[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 楼


学习中,继续

23 楼


[color=0000FF][size=4]但是,我虽然自己的机器上测试通过了,我更想知道
其他人看了做了后的反馈.[/size][/color]

24 楼

手中的活还没完。
有时间一定试一下楼主的。

25 楼


我有空来测试,你有 QQ吗

26 楼


以上都只是一个简单的,下面的关键的是如何写到服务器上的表中,个人认为是越简单越好,以上的这些好处理,不过可以更简单的

27 楼

[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 楼

我也是在学习,不是高手,很基础的东西会一点,只是说你的这么多的代码很让人害怕
我的QQ:362924376你的号我找不到很高兴有你这样的好人在讲这个东西

29 楼


[color=0000FF][size=4]    [u]我也是在学习,不是高手,很基础的东西会一点,只是说你的这么多的代码很让人害怕[/size][size=3][color=0000FF][color=FFFF00][/u]
[color=0000FF]    其实这么多的代码你有空就看,没空不看直接粘贴在vfp下运行就可以了,然后再慢慢理解程序的原理,方法对了就可以了不会很让人害怕的啊.[/color][/size][/color][/color][/color]

30 楼

[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]

我来回复

您尚未登录,请登录后再回复。点此登录或注册