| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付赛孚耐:软件保护加密专家
身份认证令牌USB KEY   
共有 388 人关注过本帖
标题:[原创]关于公共模块的一个问题````请高手指点````
收藏  订阅  推荐  打印 
譕鈊ジ変懷
Rank: 1
等级:新手上路
帖子:20
积分:300
注册:2005-5-13
[原创]关于公共模块的一个问题````请高手指点````

在项目资源管理器中添加一个Module,保存为Module.bas

添加函数ExecuteSQL,代码如下:

Public Function ExecuteSQL(ByValSQL_As String,MsgString As String)_As ADODB.Recordset

Dim cnn As ADODB.Connection

Dim rst As ADODB.Recordset

Dim sTokens()As String

On Error GoTo ExecuteSQL_Error

sTokens=Split(SQL)

Set cnn=New ADODB.Connection

cnn.Open ConnectString

If Instr("INSERT,DELETE,UPDATE",_UCase$(sTokens(0)))Then

cnn.Execute SQL

MsgString=sTokens(0)&_"query successful"

Else

Set rst=New ADODB.Recordset

rst.Open Trim$(SQL),cnn,_adOpenKeyset,_adLockOptinistic

'rst.MoveLast 'get RecordCount

Set ExecuteSQL=rst

MsgString="查询到"&rst.RecordCount&_"条记录"

End If

ExecuteSQL_Exit:

Set rst=Nothing

Set cnn=Nothing

Exit Function

ExecuteSQL_Error:

MsgString="查询错误:"&_

Err.Description

Resume ExecuteSQL_Exit

End Function

ExecuteSQL函数 有两个参数:SQLMsgString.其中SQL中用来存放需要执行的SQL 语句,MsgString用来返回执行行的提示信息。

请高手帮我看看这段代码的错误在有哪些啊? 我现在就知道红字的那个 可是看不懂```` 请高手指点一下````

搜索更多相关主题的帖子: 模块  资源管理器  Times  
2005-5-20 16:20
yms123
Rank: 12Rank: 12Rank: 12
等级:版主
威望:75
帖子:8192
积分:83594
注册:2004-7-17

cnn.Open ConnectString 那你这个函数还得需要一个参数,那就是连接字符串,这个在那里传进来?

http://www.lxzhcn.net
临时域名:http://yms126.1.suhai.com.cn/
版块版主招募中
网站论坛发帖无问题,欢迎发帖。
2005-5-20 21:41
譕鈊ジ変懷
Rank: 1
等级:新手上路
帖子:20
积分:300
注册:2005-5-13

谢谢上面的GG 这个是我在书上看的一个管理系统 我想试着做出来看看 可是怎么也做不对``` 书上是这么写的:

在项目资源管理器中添加一个Module,保存为Module.bas

添加函数ExecuteSQL,代码如下

Public Function ExecuteSQL(ByValSQL_As String,MsgString As String)_As ADODB.Recordset

Dim cnn As ADODB.Connection

Dim rst As ADODB.Recordset

Dim sTokens()As String

On Error GoTo ExecuteSQL_Error

sTokens=Split(SQL)

Set cnn=New ADODB.Connection

cnn.Open ConnectString

If Instr("INSERT,DELETE,UPDATE",_UCase$(sTokens(0)))Then

cnn.Execute SQL

MsgString=sTokens(0)&_"query successful"

Else

Set rst=New ADODB.Recordset

rst.Open Trim$(SQL),cnn,_adOpenKeyset,_adLockOptinistic

'rst.MoveLast 'get RecordCount

Set ExecuteSQL=rst

MsgString="查询到"&rst.RecordCount&_"条记录"

End If

ExecuteSQL_Exit:

Set rst=Nothing

Set cnn=Nothing

Exit Function

ExecuteSQL_Error:

MsgString="查询错误:"&_

Err.Description

Resume ExecuteSQL_Exit

End Function

ExecuteSQL函数 有两个参数:SQLMsgString.其中SQL中用来存放需要执行的SQL 语句,MsgString用来返回执行行的提示信息。

ExecuteSQL函数中使用了Connect String函数,这个函数用来连接数据库,代码如下:

Public Function ConnectString()_

As String

ConnectString="FileDSN=studentinfo.dsn;UID=sa;PWD="

End Function

由于在以后的程序中,需要频繁检查各种文本框的内容是否为空,这里定义了Testtxt函数,代码如下:

Public Function Testtxt(txt As String)As Boolean

If Trim(txt)=""Then

Testtxt=False

Else

Testtxt=Ture

End If

End Function

如果文本框内容为空时,函数将返回True ,否者将返回False.

由于该系统启动后,需要对用户进行判断。如果是授权用户,将进入系统,否则将停止程序运行。这个判断需要在系统运行的最初进行,因此将代码放在公用模块中。代码如下:

Sub Main()

Dim fLogin As New frmlogin

fLogin.Show vbModal

If Not fLogin.OK Then

'Login Failed so exit app

End If

Unload fLogin

Set fMainForm=New frmMain

fMainForm.show

End Sub

过程Main将在系统启动时首先执行,这就保证对用户的管理。

系统需要知道登陆用户的信息,定义全局变量UserName:

Public UserName As String

不晓得里面还有多少错误在里面

GG能帮忙看看吗?~~~

2005-5-21 03:23
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.083910 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved