создание новой таблицы каждый день в соответствии с датой в sql

#php #mysql #date #database-design

#php #mysql #Дата #база данных-дизайн

Вопрос:

Это код для создания таблицы каждый день в соответствии с датой. Но новая таблица не создается в базе данных. Помогите мне с этим, пожалуйста. Код приведен ниже:

 $date = date ('Ymd');
echo $date;

$query = "CREATE TABLE TEST_" . $date;
$query .= " (Name text(20), Class int(5), Age int(3), Date date, created CURRENT_TIMESTAMP);";
  

Комментарии:

1. Почему вы хотите это сделать?

2. на самом деле я хочу одновременно создавать новую таблицу в своей базе данных. Но мне приходится писать sql-запрос для создания таблицы каждый раз, когда я запускаю этот код. Понял?

3. Но мы все еще не знаем почему. Это очень странная вещь, которую хочется делать (ну, в любом случае, в контексте RDBMS)

4. Для этого WHERE date = 'YYYY-MM-DD' и существует…

5. создавать новую таблицу каждый день просто неправильно. вам не следует этого делать. никогда. вместо этого вы должны создать одну таблицу с полем даты. с этим вы можете просто фильтровать с помощью WHERE date = :thedayyouwant — но поверьте мне, с одной таблицей каждый день вы будете сталкиваться с тоннами проблем — вы будете сожалеть об этом.

Ответ №1:

Без Concat вы можете напрямую передавать

 $date = date ('Ymd');
$query = "CREATE TABLE tbltable_'".$date."' (
Name varchar (50) NOT NULL,
Class int,
Age int,
Date date,
created CURRENT_TIMESTAMP
)";
mysqli_query($query) or die(mysqli_error());
  

Комментарии:

1. Почему вы рекомендуете использовать mysql_query?

2. проверьте тег вопроса, использует ли он php

3. Вы понимаете, что все mysql_* функции были удалены из PHP 7 и их больше не следует использовать?

4. Да, mysqli — это не то же самое, что функции mysql_ *.