MySQLテーブルの作成が失敗しました - エラー1064
-
28-10-2019 - |
質問
MySQL Admin GUIツールを使用してテーブルを作成しています。これがエラーをもたらすクエリ言語です。
CREATE TABLE `environment`.`moisture` (
`city_id` INT,
`date_holding` VARCHAR,
`time_holding` VARCHAR,
`open` REAL,
`high` REAL,
`low` REAL,
`close` REAL,
)
CHARACTER SET utf8;
私の日付と時刻はMySQLが好きな形式ではないので、Varcharをそれらの列のタイプとして選択し、必要な変換を行うためにクエリを実行できるまで列を保持するものと呼びました。
GUIを介してこれを実行しようとすると、次のことがわかります。
SQLコマンドを実行してテーブルを作成します。
SQL構文にエラーがあります。適切な構文のためにMySQL Serverバージョンに対応するマニュアルを確認してください。
`time_holding` varcharはnullではありません、
`open` nullではなく、null、
3行目の「high` re」(エラー1064)
なぜ私がこれを手に入れているのかという考えはありますか?予約された単語を使用しているかどうかを確認しましたが、そうではないようです。
あなたの助けは大歓迎です。
解決
あなたが持っている最初のエラーはそれによるものです VARCHAR
フィールドには次のような長さが必要です。 VARCHAR(30)
.
2番目のエラー(2つのVarcharを修正すると取得されます)は、最後の括弧の前のコンマです。
CREATE TABLE `environment`.`moisture` (
`city_id` INT,
`date_holding` VARCHAR(30), --or whatever length you want
`time_holding` VARCHAR(20), --same
`open` REAL,
`high` REAL,
`low` REAL,
`close` REAL --- no comma here
)
CHARACTER SET utf8;
サイドノート:MySQLには日付と時間を処理するための特定のタイプがあることをご存知ですか?だからあなたは持っていることができます:
CREATE TABLE `environment`.`moisture` (
`city_id` INT,
`date_holding` date,
`time_holding` time,
...
所属していません StackOverflow