开发者

Using variables instead of objects

开发者 https://www.devze.com 2023-02-23 08:48 出处:网络
I used this line .RecordSource = \"select * from tblpersonal where empid like \'\" & Me.lblIDNumber.Caption & \"*\'\"

I used this line

.RecordSource = "select * from tblpersonal where empid like '" & Me.lblIDNumber.Caption & "*'"

...my question is, what if I use a variable (varIDNumber) instead of object (lblIDNumber), what would be the 开发者_StackOverflowsyntax? I am using VB6.0


You didn't mention txtIDNumber in the code -- you mentioned lblIDNumber. I assume you mean for those two to be the same. In other words, the code you have at present should be something like this:

.RecordSource = "select * from tblpersonal where empid like '" & Me.txtIDNumber.Text & "*'"

So you are using the value of a text box in a form to populate the SQL query. Am I right so far?

And you are asking, what if I store the ID number in a variable rather than a text field? I agree, this is probably a step in the right direction.

So you might create a variable in the "General Declarations" section of the form using:

Dim idNumber As Integer

With the idea being to update the value of that variable each time the text field changes. Note: I am assuming that the "ID number" is an integer -- if not, you should use a String instead.

Now you need to update that variable when the text field changes. In the txtIDNumber_Change event, you will want to add code to convert the string txtIDNumber.Text into an Integer, and store it in idNumber. I forget the exact syntax, but I am guessing something like:

idNumber = Int(txtIDNumber.Text)

Finally, you can now use the idNumber variable in the SQL query rather than the text box:

.RecordSource = "select * from tblpersonal where empid like '" & idNumber & "*'"


Replace Me.lblIDNumber.Caption with varIDNumber


If you have a constant in the label and would prefer for the constant to be stored in a variable instead, create a Const in the form's code. Let's say the label has the text "43" in it.

In the general declarations section of the form, add the code:

Const idNumber As Integer = 43

Then, when constructing the query:

.RecordSource = "select * from tblpersonal where empid like '" & idNumber & "*'"

This will construct the query using the constant 43. I don't really see the point of this -- if you want the employee number to be something the user can type in, see my other answer.

0

精彩评论

暂无评论...
验证码 换一张
取 消