Re: problem with update statement

2005-04-25 Thread ragan_davis
Thanks for the info. I am using 4.0.24, so maybe this is the problem.  
I was able to get around this by first checking if the mac field was 
empty, but I will look into upgrading mysql to a more current version.

thanks

- Original Message -
From: [EMAIL PROTECTED]
Date: Monday, April 25, 2005 9:26 am
Subject: Re: problem with update statement

 Hi,
 this is an example where what you describe doesn't happen (v 4.1 
 and 5.0) :
 mysql create table ports(mac varchar(17),port_index varchar(3));
 Query OK, 0 rows affected (0.10 sec)
 
 mysql insert into ports 
 values('00:04:FB:23:5A:44','120'),(NULL,'120');Query OK, 2 rows 
 affected (0.08 sec)
 Records: 2  Duplicates: 0  Warnings: 0
 
 mysql select * from ports;
 +---++
 | mac   | port_index |
 +---++
 | 00:04:FB:23:5A:44 | 120|
 | NULL  | 120|
 +---++
 2 rows in set (0.00 sec)
 
 mysql select * from ports where mac='00:04:FB:23:5A:44';
 +---++
 | mac   | port_index |
 +---++
 | 00:04:FB:23:5A:44 | 120|
 +---++
 1 row in set (0.00 sec)
 
 mysql
 mysql update ports set port_index='123' where 
 mac='00:04:FB:23:5A:44';Query OK, 1 row affected (0.41 sec)
 Rows matched: 1  Changed: 1  Warnings: 0
 
 mysql select * from ports;
 +---++
 | mac   | port_index |
 +---++
 | 00:04:FB:23:5A:44 | 123|
 | NULL  | 120|
 +---++
 2 rows in set (0.00 sec)
 
 mysql
 
 if you use an old version which is buggy, just migrate.
 
 Mathias
 
 Selon Brent Baisley [EMAIL PROTECTED]:
 
  That is very odd behavior and shouldn't be happening. I ran a quick
  test on my machine and MySQL does not exhibit that behavior. You 
may
  try running and repair on your table. Perhaps something is out of
  whack. What version of MySQL are you running?
 
 
  On Apr 22, 2005, at 6:08 PM, [EMAIL PROTECTED] wrote:
 
   Hello, all:
  
   In a MyISAM table, I have a column named MAC, of type 
 VARCHAR(17).  This field is used to hold MAC addresses of 
 computers' network
   interface cards.  These MAC addresses are in the
   form XX:XX:XX:XX:XX:XX, where X can be either a number or an
   uppercase letter.  I can run select * from table where
   MAC='00:04:FB:23:5A:44' and the correct record is returned.  
 However,  performing update table set port_index='123' where
   MAC='00:04:FB:23:5A:44' does not work as I expected.  It does 
 update  the correct record, but also updates all other records 
 whose MAC field
   is empty.  When I originally created this field, I used type 
 VARCHAR  (17), null, default value NULL.  In troubleshooting 
 this, I have since
   change the type to CHAR(17), not null, empty default value.  
Still
   have the same problem.  Does anyone know what's going on here, 
 and how
   I could correct this?
  
   Thanks!
  
   --
   MySQL General Mailing List
   For list archives: http://lists.mysql.com/mysql
   To unsubscribe:
   http://lists.mysql.com/[EMAIL PROTECTED]
  
  
  --
  Brent Baisley
  Systems Architect
  Landover Associates, Inc.
  Search  Advisory Services for Advanced Technology Environments
  p: 212.759.6400/800.759.0577
 
 
  --
  MySQL General Mailing List
  For list archives: http://lists.mysql.com/mysql
  To unsubscribe:
 http://lists.mysql.com/[EMAIL PROTECTED]
 
 
 
 
 -- 
 MySQL General Mailing List
 For list archives: http://lists.mysql.com/mysql
 To unsubscribe:
 http://lists.mysql.com/[EMAIL PROTECTED]
 

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



problem with update statement

2005-04-22 Thread ragan_davis
Hello, all:

In a MyISAM table, I have a column named MAC, of type VARCHAR(17).  
This field is used to hold MAC addresses of computers' network 
interface cards.  These MAC addresses are in the 
form XX:XX:XX:XX:XX:XX, where X can be either a number or an 
uppercase letter.  I can run select * from table where 
MAC='00:04:FB:23:5A:44' and the correct record is returned.  However, 
performing update table set port_index='123' where 
MAC='00:04:FB:23:5A:44' does not work as I expected.  It does update 
the correct record, but also updates all other records whose MAC field 
is empty.  When I originally created this field, I used type VARCHAR
(17), null, default value NULL.  In troubleshooting this, I have since 
change the type to CHAR(17), not null, empty default value.  Still 
have the same problem.  Does anyone know what's going on here, and how 
I could correct this?

Thanks!

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]