Heenan, Lambert
Lambert.Heenan at AIG.com
Thu Oct 30 08:19:21 CST 2003
Of course you realize that needing bitwise operators for a field is just screaming *it's not normalized* <g>. Lambert > -----Original Message----- > From: John Colby [SMTP:jcolby at colbyconsulting.com] > Sent: Wednesday, October 29, 2003 5:48 PM > To: Access Developers discussion and problem solving > Subject: RE: [AccessD] brain farts > > I tried this and it's giving me errors. This is the actual built up SQL > statement. > > UPDATE MsysForms SET [FRM_GroupOpen] = [FRM_GroupOpen] ~ 4, > [FRM_GroupVisible] = [FRM_GroupVisible] ~ 4, [FRM_GroupEdit] = > [FRM_GroupEdit] ~ 4, [FRM_GroupAddRec] = [FRM_GroupAddRec] ~ 4, > [FRM_GroupDelRec] = [FRM_GroupDelRec] ~ 4 WHERE (((MsysForms.FRM_ID) In > (28,34,33,35,32,29,31,30))); > > Is that as you understand it to be used? Likewise it didn't like the > vertical bar. > > John W. Colby > www.colbyconsulting.com > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Stuart > McLachlan > Sent: Wednesday, October 29, 2003 5:04 PM > To: Access Developers discussion and problem solving > Subject: RE: [AccessD] brain farts > > > Sure you can. You need to use the "bitwise" oprators, not the > logical operators: > > & (Bitwise AND), > | (Bitwise OR) , > ^ (Bitwise Exclusive OR) > ~ (Bitwise NOT) > > On 29 Oct 2003 at 15:37, James Barash wrote: > > > John, > > As far as I know, you cannot use bitwise functions in an SQL statement. > > You need to create a function to do the comparison. For example: > > > > Public Function BinaryOr(ByVal val1 As Long, ByVal val2 As Long) As Long > > BinaryOr = (val1 Or val2) > > End Function > > > > Create one function for each binary comparison you need or you could > > create one function and pass the operator you want to use. > > Hope this helps. > > > > James Barash > > > > > > -----Original Message----- > > From: accessd-bounces at databaseadvisors.com > > [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of John Colby > > Sent: Wednesday, October 29, 2003 2:12 PM > > To: AccessD > > Subject: [AccessD] brain farts > > > > > > Folks, > > > > I'm trying to do boolean operations in a query. I have a table with bit > > mapped fields such that the long integer has bits "on" or 1 in specific > > circumstances. Now I want to OR in other numbers in SQL. I have a SQL > > statement that looks like: > > > > SELECT MsysForms.FRM_GroupOpen, ([MsysForms]![frm_GroupOpen] Or 1) AS > > NewVal FROM MsysForms; > > > > regardless of the value contained in the field frm_GroupOpen, the NewVal > > is always -1 for an OR or an AND of any other value, and 0 for an XOR. > > > > If I have a 4 in the field, 4 OR 1 should give me 5, but it is giving me > > -1. I believe it is "interpreting" it and saying it is true. But why? > > > > John W. Colby > > www.colbyconsulting.com > > > > > > _______________________________________________ > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > > > _______________________________________________ > > AccessD mailing list > > AccessD at databaseadvisors.com > > http://databaseadvisors.com/mailman/listinfo/accessd > > Website: http://www.databaseadvisors.com > > > -- > Lexacorp Ltd > http://www.lexacorp.com.pg > Information Technology Consultancy, Software Development,System Support. > > > > _______________________________________________ > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > > > _______________________________________________ > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com