У меня есть база данных, которая содержит 4 таблицы, однако я использую одну из них, которая отделена от других.
В этой таблице у меня есть 4 поля, которые являются varchar, а остальные являются целочисленными (11 других полей), когда пользователи заполняют БД, все сохраняется правильно, однако это происходило 3 раза настолько, что значения базы данных для int сбрасывается в 0 без видимой причины. Сначала я думал, что это потому, что эти поля (куда должны идти цифры) были varchars, а не ints. Однако, так как я изменил это, это случилось снова. Я уже дважды проверил свой код, и у меня нет ничего, что даже обновляет или вставляет значение 0. Кроме того, я использую codeigniter и активные записи, которые защищают от SQL-инъекций и имеют включенную фильтрацию XSS. Может ли кто-нибудь указать на то, чего мне не хватает, или на причину этого?
Кроме того, я почти уверен в ответе на этот вопрос, но есть ли ЛЮБОЙ способ восстановить некоторые данные ?? Кроме того, чтобы попросить всех заполнить все заново .. = /
** РЕДАКТИРОВАТЬ **
Механизм хранения - MyISAM, а Collation - latin1_swedish_ci, ключи пакета установлены по умолчанию, для всех целей и задач это обычная БД
** РЕДАКТИРОВАТЬ **
Вот моя структура таблицы
-- phpMyAdmin SQL Dump
-- version 3.3.5
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Generation Time: Feb 10, 2011 at 09:31 AM
-- Server version: 5.0.51
-- PHP Version: 5.2.14
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
--
-- Database: `cinesdec_prueba`
--
-- --------------------------------------------------------
--
-- Table structure for table `Oscar`
--
CREATE TABLE IF NOT EXISTS `Oscar` (
`Id` int(20) NOT NULL auto_increment,
`Nombre` varchar(100) default NULL,
`ApPaterno` varchar(100) default NULL,
`ApMaterno` varchar(100) default NULL,
`Edad` varchar(25) default NULL,
`Twitter` varchar(250) default NULL,
`Correo` varchar(250) NOT NULL default '',
`BestPicture` int(10) unsigned NOT NULL,
`ActorLead` int(10) unsigned NOT NULL,
`ActorSupport` int(10) unsigned NOT NULL,
`ActressLead` int(10) unsigned NOT NULL,
`ActressSupport` int(10) unsigned NOT NULL,
`Art` int(10) unsigned NOT NULL,
`Directing` int(10) unsigned NOT NULL,
`Foreing` int(10) unsigned NOT NULL,
`Music` int(10) unsigned NOT NULL,
`Visual` int(10) unsigned NOT NULL,
`Desempate` int(10) unsigned NOT NULL,
PRIMARY KEY (`Correo`),
UNIQUE KEY `Id` (`Id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=89 ;