2

以下のコードを使用してそのテーブルにテーブルを作成します。日付と時刻を2つの分離された列に保存し、以下のクエリを使用して日付と時刻のデフォルトを設定しますが、このエラーが発生します

create table location_aj
(
  id int not null auto_increment primary key, 
  vehicle_id varchar(10), 
  latitude float(12,2),
  longitude float(12,2), 
  price float(15,2), 
  fdate DATE DEFAULT CURRENT_DATE, 
  ftime TIME DEFAULT CURRENT_TIME
);

SQL 構文にエラーがあります。1 行目の「CURRENT_DATE, ftime TIME DEFAULT CURRENT_TIME)」付近で使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください。

助けてください

4

4 に答える 4

0

デフォルト値は定数である必要があり、関数/式ではないため、TIME と DATE のデフォルト値をそれぞれ設定するために現在の時刻と現在の日付を使用することはできません。

mysqlドキュメントから:

データ型のデフォルト値

データ型指定の DEFAULT 値句は、列のデフォルト値を示します。1 つの例外を除いて、デフォルト値は定数でなければなりません。関数または式にすることはできません。

于 2013-10-09T09:00:38.697 に答える
0

そのDATE/TIMEはできません。以下を試してください、

CREATE TABLE test( DATEタイムスタンプ NOT NULL DEFAULT CURRENT_TIMESTAMP )

于 2013-10-09T09:07:46.683 に答える