It sounds like some of your database tables are damaged or out of sync ...
The best way I can think to fix them is to start over on your creation of attributes by cleaning out everything and beginning again ...
You can do this by backing up your database then running the following in your Zen Cart Admin in the Tools ... Install SQL Patches ...
#
# Table structure for table 'products_attributes'
#
DROP TABLE IF EXISTS products_attributes;
CREATE TABLE products_attributes (
products_attributes_id int(11) NOT NULL auto_increment,
products_id int(11) NOT NULL default '0',
options_id int(11) NOT NULL default '0',
options_values_id int(11) NOT NULL default '0',
options_values_price decimal(15,4) NOT NULL default '0.0000',
price_prefix char(1) NOT NULL default '',
products_options_sort_order int(11) NOT NULL default '0',
product_attribute_is_free tinyint(1) NOT NULL default '0',
products_attributes_weight float NOT NULL default '0',
products_attributes_weight_prefix char(1) NOT NULL default '',
attributes_display_only tinyint(1) NOT NULL default '0',
attributes_default tinyint(1) NOT NULL default '0',
attributes_discounted tinyint(1) NOT NULL default '1',
attributes_image varchar(64) default NULL,
attributes_price_base_included tinyint(1) NOT NULL default '1',
attributes_price_onetime decimal(15,4) NOT NULL default '0.0000',
attributes_price_factor decimal(15,4) NOT NULL default '0.0000',
attributes_price_factor_offset decimal(15,4) NOT NULL default '0.0000',
attributes_price_factor_onetime decimal(15,4) NOT NULL default '0.0000',
attributes_price_factor_onetime_offset decimal(15,4) NOT NULL default '0.0000',
attributes_qty_prices text,
attributes_qty_prices_onetime text,
attributes_price_words decimal(15,4) NOT NULL default '0.0000',
attributes_price_words_free int(4) NOT NULL default '0',
attributes_price_letters decimal(15,4) NOT NULL default '0.0000',
attributes_price_letters_free int(4) NOT NULL default '0',
attributes_required tinyint(1) NOT NULL default '0',
PRIMARY KEY (products_attributes_id),
KEY idx_id_options_id_values_zen (products_id,options_id,options_values_id),
KEY idx_opt_sort_order_zen (products_options_sort_order)
) ENGINE=MyISAM;
# --------------------------------------------------------
#
# Table structure for table 'products_attributes_download'
#
DROP TABLE IF EXISTS products_attributes_download;
CREATE TABLE products_attributes_download (
products_attributes_id int(11) NOT NULL default '0',
products_attributes_filename varchar(255) NOT NULL default '',
products_attributes_maxdays int(2) default '0',
products_attributes_maxcount int(2) default '0',
PRIMARY KEY (products_attributes_id)
) ENGINE=MyISAM;
#
# Table structure for table 'products_options'
#
DROP TABLE IF EXISTS products_options;
CREATE TABLE products_options (
products_options_id int(11) NOT NULL default '0',
language_id int(11) NOT NULL default '1',
products_options_name varchar(32) NOT NULL default '',
products_options_sort_order int(11) NOT NULL default '0',
products_options_type int(5) NOT NULL default '0',
products_options_length smallint(2) NOT NULL default '32',
products_options_comment varchar(64) default NULL,
products_options_size smallint(2) NOT NULL default '32',
products_options_images_per_row int(2) default '5',
products_options_images_style int(1) default '0',
products_options_rows smallint(2) NOT NULL default '1',
PRIMARY KEY (products_options_id,language_id),
KEY idx_lang_id_zen (language_id),
KEY idx_products_options_sort_order_zen (products_options_sort_order),
KEY idx_products_options_name_zen (products_options_name)
) ENGINE=MyISAM;
# --------------------------------------------------------
#
# Table structure for table 'products_options_types'
#
DROP TABLE IF EXISTS products_options_types;
CREATE TABLE products_options_types (
products_options_types_id int(11) NOT NULL default '0',
products_options_types_name varchar(32) default NULL,
PRIMARY KEY (products_options_types_id)
) ENGINE=MyISAM COMMENT='Track products_options_types';
# --------------------------------------------------------
#
# Table structure for table 'products_options_values'
#
DROP TABLE IF EXISTS products_options_values;
CREATE TABLE products_options_values (
products_options_values_id int(11) NOT NULL default '0',
language_id int(11) NOT NULL default '1',
products_options_values_name varchar(64) NOT NULL default '',
products_options_values_sort_order int(11) NOT NULL default '0',
PRIMARY KEY (products_options_values_id,language_id),
KEY idx_products_options_values_name_zen (products_options_values_name),
KEY idx_products_options_values_sort_order_zen (products_options_values_sort_order)
) ENGINE=MyISAM;
# --------------------------------------------------------
#
# Table structure for table 'products_options_values_to_products_options'
#
DROP TABLE IF EXISTS products_options_values_to_products_options;
CREATE TABLE products_options_values_to_products_options (
products_options_values_to_products_options_id int(11) NOT NULL auto_increment,
products_options_id int(11) NOT NULL default '0',
products_options_values_id int(11) NOT NULL default '0',
PRIMARY KEY (products_options_values_to_products_options_id),
KEY idx_products_options_id_zen (products_options_id),
KEY idx_products_options_values_id_zen (products_options_values_id)
) ENGINE=MyISAM;
INSERT INTO products_options_types (products_options_types_id, products_options_types_name) VALUES (0, 'Dropdown');
INSERT INTO products_options_types (products_options_types_id, products_options_types_name) VALUES (1, 'Text');
INSERT INTO products_options_types (products_options_types_id, products_options_types_name) VALUES (2, 'Radio');
INSERT INTO products_options_types (products_options_types_id, products_options_types_name) VALUES (3, 'Checkbox');
INSERT INTO products_options_types (products_options_types_id, products_options_types_name) VALUES (4, 'File');
INSERT INTO products_options_types (products_options_types_id, products_options_types_name) VALUES (5, 'Read Only');
INSERT INTO products_options_values (products_options_values_id, language_id, products_options_values_name) VALUES (0, 1, 'TEXT');