VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 364|回复: 10

[求助] C++数据库篇,局域网内电脑A装数据库,其它电脑装程序,该怎么实现都可以增删改查呢?

[复制链接]
77_avatar_middle
在线会员 发表于 2019-4-8 20:34:34 | 显示全部楼层 |阅读模式
3驿站币
写完程序后,在自己本机可以实现增删改查,现在想局域网内 电脑A安装数据库,多台电脑安装程序后实现对统一数据库的访问和操作,该怎么实现呢?

最佳答案

查看完整内容

SQL Native Client 就行,不用整个数据库!




上一篇:有没有D3D的大神,帮一下吧
下一篇:C语言 字符串变量 和 字符串常量的比较 问题
51_avatar_middle
online_admins 发表于 2019-4-8 20:34:35 | 显示全部楼层
dedry 发表于 2019-4-9 17:44
我这局域网好几台电脑,自己写的这个仓库管理系统才 4M多, 那不是得每台电脑装个好几G 的数据库?

SQL Native Client 就行,不用整个数据库!
77_avatar_middle
ico_lz  楼主| 发表于 2019-4-8 20:37:46 | 显示全部楼层
目前在 Release 生成的 EXE 发给别的电脑, 点击后不能连接数据库,提示ADODB.Connection 程序未安装
51_avatar_middle
online_admins 发表于 2019-4-8 22:21:27 | 显示全部楼层
得连接远程电脑上的数据库才行
另外,数据库所在的电脑的数据库也要开启支持远程连接才行,不然肯定连接不上
87_avatar_middle
在线会员 发表于 2019-4-9 04:14:18 | 显示全部楼层
要写个配置文件,在配置文件里写上远程数据库的IP地址和登陆名密码这些,然后程序在读入这些配置
77_avatar_middle
ico_lz  楼主| 发表于 2019-4-9 16:02:20 | 显示全部楼层
Syc 发表于 2019-4-8 22:21
得连接远程电脑上的数据库才行
另外,数据库所在的电脑的数据库也要开启支持远程连接才行,不然肯定连接不 ...

头文件 stdafx.h
#import"C:/Program Files/Common Files/system/ado/msado15.dll" \
                no_namespace rename("EOF","adoEof")
主 CPP
if (!ConnectDB())//连接数据库
        {
                AfxGetMainWnd()->SendMessage(WM_CLOSE);
                return true;
        }
bool CWareHouseDlg::ConnectDB()
{
        //连接数据库
        HRESULT hr;
        try
        {
                hr = m_pConnection.CreateInstance(__uuidof(Connection));
                if (SUCCEEDED(hr))
                {
                        _bstr_t connectStr =_T("Provider=SQLNCLI11;Server=LAPTOP-V4CIVOJN;Database=DBChuRuInfo;");
                        m_pConnection->ConnectionTimeout = 5;
                        if (FAILED(hr))
                        {
                                MessageBox(_T("打开数据库失败"));
                                return true;
                        }
                        hr = m_pConnection->Open(connectStr, _T("sa"), _T("123456"), adConnectUnspecified);

                }
                else
                {
                        MessageBox(_T("实例化Connection 对象失败"));
                        return true;
                }
        }
        catch (_com_error &e)
                {
                        _bstr_t bstrSource(e.Source());
                        _bstr_t bstrDescription(e.Description());
                        MessageBox(bstrSource,bstrDescription);
                       
                        return false;
                }
       
        return true;
}
77_avatar_middle
ico_lz  楼主| 发表于 2019-4-9 17:29:51 | 显示全部楼层
Syc 发表于 2019-4-8 22:21
得连接远程电脑上的数据库才行
另外,数据库所在的电脑的数据库也要开启支持远程连接才行,不然肯定连接不 ...

老大,我在自己电脑 数据库 开启了 TCP ip x协议, 程序在自己电脑用 局域网内IP地址
Provider=SQLNCLI11;Server=192.168.1.2;Database=DBChuRuInfo;Uid=sa;
Pwd=123456;
可以正常打开程序,就是不知道 在另一台电脑 该怎么连,只发了EXE 的程序过去
51_avatar_middle
online_admins 发表于 2019-4-9 17:32:59 | 显示全部楼层
dedry 发表于 2019-4-9 17:29
老大,我在自己电脑 数据库 开启了 TCP ip x协议, 程序在自己电脑用 局域网内IP地址
Provider=SQLNCLI1 ...

也一样的,但是应该在目标电脑上装个 SQL Client 才行,不然可能连不上
77_avatar_middle
ico_lz  楼主| 发表于 2019-4-9 17:44:36 | 显示全部楼层
Syc 发表于 2019-4-9 17:32
也一样的,但是应该在目标电脑上装个 SQL Client 才行,不然可能连不上

我这局域网好几台电脑,自己写的这个仓库管理系统才 4M多, 那不是得每台电脑装个好几G 的数据库?
04_avatar_middle
online_vip 发表于 2019-4-9 20:31:29 | 显示全部楼层
其他电脑上安装sql native client,具体可以勾引下度娘
77_avatar_middle
ico_lz  楼主| 发表于 2019-4-10 23:28:19 | 显示全部楼层
问题解决了,现在问题是我数据库有700多条出入库记录,一旦我没有设置 SELECT TOP 20 * 程序就无响应直接卡死了
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号tongdun|网站地图wx_jqr

GMT+8, 2019-4-20 21:18

Powered by Discuz! X3.4

© 2009-2019 cctry.com

快速回复 返回顶部 返回列表