当前位置:首页 » 编程语言 » pbsql系统源代码
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

pbsql系统源代码

发布时间: 2022-07-22 03:09:37

1. pb中的备份数据库和恢复数据库的代码怎么写

备份:
integer msg
string ls_bardir,ls_path,ls_date,ls_exesql,ls_dbname

//调用API
//CloseBitmapClient(Handle(this))

msg = messagebox("提示","进行数据库备份吗?",Question!,YesNoCancel!,3)
if msg = 2 then
return 0
elseif msg = 3 then
return 1
else
if m_main.m_系统管理.m_数据库备份.enabled = true and m_main.m_系统管理.m_数据库备份.visible = true then

SetPointer(HourGlass!)
//获取备份的数据库名
ls_dbname = ProfileString(gs_profile,"Database","SQLCA.Database","")
//获取备份路径
ls_bardir = ProfileString(gs_profile,"path","backpath","")
if not FileExists(ls_bardir) then
CreateDirectory(ls_bardir)
end if
ls_bardir = ls_bardir + "\"
ls_date = string(today(),"yyyymmddhhmmss")
SQLCA.AutoCommit = true
//设置备份文件名
ls_path = ls_bardir + ls_dbname + ls_date + ".bak"
//建立备份设备
ls_exesql = "EXEC sp_admpdevice 'DISK' " + ",'" + ls_dbname + "'" + "," + "'" + ls_path + "'"
EXECUTE IMMEDIATE :ls_exesql using sqlca;
//备份数据库
ls_exesql = "BACKUP DATABASE " + ls_dbname + " TO " + ls_dbname
EXECUTE IMMEDIATE :ls_exesql using sqlca;
//删除备份设备
ls_exesql = "EXEC sp_dropdevice '" + ls_dbname + "'"
EXECUTE IMMEDIATE :ls_exesql using sqlca;

SQLCA.AutoCommit = false
if sqlca.sqlcode = 0 then
messagebox("数据库备份","数据库备份完成!")
else
messagebox("数据库备份",sqlca.sqlerrtext)
end if
else
messagebox("提示","该用户没有备份数据库的权限!")
return 0
end if
end if

看看代码改一下即可,恢复的话差不多,自己研究研究吧

2. PB与SQL数据库的连接问题

你有源代码么?如果有源代码,看看这个客户端连接数据库的SQLCA参数是怎么设置的。
一般的软件会有几种方法:
第一是写死在程序中,直接设置SQLCA的相关参数,不过这样的配置,可移植性就差了。如果更换服务器的地址或迁移数据库,所有客户端的程序都要重新下载,而且要重新修改源代码。
第二种事写在注册表中,在注册表中增加一项,这里面存储着SQLCA的连接参数,服务器地址,数据库用户名密码。
第三种是使用配置文件,一般在程序目录下会有一个'.ini'后缀名的文件,这里面存储着SQLCA的参数,修改这些,就可以修改登录时连接服务器的指向了。

你首先要搞清楚你的ERP客户端,是通过哪种方式读取配置的,然后只要修改配置就好了。因为你的PB已经连通,表明你是可以连接数据库的,所以只要使客户端登陆的时候,指向数据库就好。

3. PB中的数据窗口的数据源SQL语句在哪

菜单 design - data source 就可以看到了,如果看到得是数据表,再点菜单中的design - convert to syntax,要返回点return按钮

4. 谁能提供我pb+sql源程序,并带SQL数据库怎样配置说明

你的数据窗口是不是没有settransobject(sqlca)啊
如果是的话,你在retrieve()前,settransobject(sqlca)一下

5. pb连接SQL2000代码的解释

可以考虑用下面的方法试试:
1.将Program files下的SQL安装目录删除(此处如果有重要的数据,请先备份)

C:\Program Files\Microsoft SQL Server\80\Tools。 C:\Program Files\Microsoft SQL Server\MSSQL。

2.注册表中的相关信息删除:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer。 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSDTC。

3.HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager中找到PendingFileRenameOperations项目,并删除它。这样就可以清除安装暂挂项目

4.HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\setup删除ExceptionComponents

这个项目下的内容可能很多,只有在上面几个办法不行的情况下,使用此方法(注意不要全部删除)

删除内容前先看下内容说明

5.Windows 目录中的 Sqlstp.log 文件,该文件列出了安装程序所执行的操作的详细信息,并包含安装期间遇到的所有错误。通过检查该文件,可以详细了解安装在什么地方失败、为什么失败。

6.SQL安装的时的错误信息保存在一个叫Errorlog的日志文件中,默认情况下该文件位于 Program Files\Microsoft SQL Server\Mssql\Log 目录中。该错误日志包含安装程序试图启动 SQL Server 时 SQL Server 所遇到的错误,这些信息可以帮助您深入检查错误原因。

7.需要检查的另一个组件是 Microsoft 数据访问组件 (MDAC) 安装程序,它作为 SQL Server 2000 安装程序的一部分启动。SQL Server 2000 安装程序会安装 MDAC 2.6。MDAC 安装程序会创建名为 Dasetup.log 的单独的日志文件;您可以查看此日志文件并确保 MDAC 安装程序没有出现问题。

如果在不行那就,上玩找别的软件来安装,有时候软件都会有问题的,

6. pb做系统,sql做数据库,建好一个数据窗口,要求查询代码,可以连接数据库进行查询

首先:
select houseid
into :q
from tbhousesale
where houseid=:bianhao;
if q="" then
messagebox("没有找到符合条件的房屋","请重新输入!")
end if
上面那段代码的意义在哪里?得到一个q?可是这个q你在接下来根本没有用到啊。

这段代码执行后想要出来东西,就需要dw_1.retrieve(bianhao)有意义,你说运行后没反应那肯定就是dw_1有问题了。
可是你又没贴出dw_1里面的东西来的,没法帮你解答。

7. PB中远程连接SQL Server数据库代码应该怎么写

以PB默认的数据库连接实例SQLCA为例

//连接参数设置
SQLCA.DBMS="MSSMicrosoftSQLServer"
SQLCA.Database="dbname"//数据库名称
SQLCA.LogPass=“”//用户密码
SQLCA.ServerName="192.168.0.251"
SQLCA.LogId="sa"//SQLserver用户名
SQLCA.AutoCommit=True
SQLCA.DBParm=""
//连接
CONNECTUSINGSQLCA;

8. pb做的程序 后台数据库 SQL 启动数据库服务 程序才能开启

首先,PB连接数据库,需要数据库运行,这是必须的
PB只是一个前台程序,你不能指望用PB来影响SQL的运行
其次,PB程序的分发,需要pb安装目录里面的那些dll文件,不然不能正常运行,即使你这个程序不是数据库程序。当然,如果你没用dw或者没用其他的,好像只使用pbvm90.dll也行,建议你都带着,虽然占地方,但是没坏处
需要连接SQL,要从SQL安装目录找sql开头的4个dll文件,也放到pb程序目录,这样就不需要在客户端安装SQL或者是msde了
有的计算机即使dll都考过来了,还是不太正常,那只有安装msde了,反正也不大
最后一招,实在不行,你可以在服务器上弄上快捷方式,客户端用远程桌面方式登录服务器,运行pb,绝对不需要任何配置,不会出任何问题,当然,这是没办法的办法。

9. 求登陆界面的代码PB+SQL

代码如下,
说明:其中sle_uname是指输入用户名的单行编辑框,下同。sno指表中的用户名,password为表中用来登录的密码。t_student为登陆表!

string ls_uname,ls_pwd1,ls_pwd2,ls_sno,ls_s1
ls_uname=sle_uname.text
ls_pwd1=sle_pwd.text
select sno
into :ls_sno
from t_student
where t_student.sno=:ls_uname;
if sle_uname.text="" or sle_pwd.text="" then
messagebox("提示","用户名或密码不能为空,请输入用户名或密码!")
sle_uname.text=""
sle_pwd.text=""
return
end if
select password
into :ls_pwd2
from t_student
where t_student.sno = :ls_uname ;
if ls_pwd1 = ls_pwd2 then
open(w_main)
close(w_login)
else
messagebox("错误","用户名或密码错误,请重新输入!")
sle_pwd.text=""
return
end if
有不懂的再联系哈!