當前位置:首頁 » 編程語言 » 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
有不懂的再聯系哈!