Не записывает данные
после создания таблицы не записывает значение. Можете помочь?
$queryCreateTable = mysqli_query($link, "CREATE TABLE `user_test` (
`id` int NOT NULL AUTO_INCREMENT,
`num` int DEFAULT NULL,
`oper` varchar(69) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL,
`region_id` varchar(69) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL,
`region` varchar(69) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL,
`city_id` varchar(69) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL,
`city` varchar(69) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL,
`area_id` varchar(69) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL,
`area` varchar(69) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL,
`gender` varchar(69) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `num` (`num`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;");
$queryWriting = mysqli_query($link, "UPDATE user_test SET num=111111111 ");
Ответы (1 шт):
Автор решения: Сергей Филонов
→ Ссылка
Код для SQL, вам надо его обернуть в PHP, но это как-нибудь сами. Есть несколько замечаний, но обо все по порядку. Пишу без студии, могут быть ошибки.
Создание таблицы примерно так:
CREATE TABLE user_test (
id int NOT NULL AUTO_INCREMENT,
num int NOT NULL,
oper varchar(69) NULL,
region_id varchar(69) NULL DEFAULT NULL,
region varchar(69) NULL DEFAULT NULL,
city_id varchar(69) NULL DEFAULT NULL,
city varchar(69) NULL DEFAULT NULL,
area_id varchar(69) NULL,
area varchar(69) NULL,
gender varchar(69) NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `num` (`num`)
)
Вставка
INSERT INTO user_test ('num') VALUES (10)
Обновление
UPDATE user_test SET 'num' = 20 WHERE id = 1
Замечания:
- Почему region_id, city_id, area_id в varchar? Скорее всего в соответствующих таблицах id будет INT, поэтому стоит использовать INT.
- Зачем под gender - varchar(69)? 69 будут явно излишне, хотя не критично, но все же.
- Почему num DEFAULT NULL если он уникальный?