前提・実現したいこと
mysqlを使ってデータベースを作っています。しかし、写生しているコードがsqlite3でコピペしてもエラーが出てしまいます。自分なりにコードを変えたのですが、やはり変えた部分がエラーになっています。
出典 https://github.com/deatiger/basic-rest-api/blob/develop/README.md
ちなみに日付を取得するコードで戸惑っています。
発生している問題・エラーメッセージ
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CURRENT_TIME, updated_at TEXT NOT NULL CURRENT_TIME, deta_of_birth TEXT )' at line 5
該当のソースコード
元のコード
sqlite
1CREATE TABLE users ( 2 id INTEGER NOT NULL PRIMARY KEY, 3 name TEXT NOT NULL, 4 profile TEXT, 5 created_at TEXT NOT NULL DEFAULT (DATETIME('now', 'localtime')), 6 updated_at TEXT NOT NULL DEFAULT (DATETIME('now', 'localtime')), 7 date_of_birth TEXT 8); 9
改造したコード
mysql
1CREATE TABLE users ( 2 id INTEGER NOT NULL PRIMARY KEY, 3 name TEXT NOT NULL, 4 profile TEXT, 5 create_at TEXT NOT NULL CURRENT_TIME, 6 updated_at TEXT NOT NULL CURRENT_TIME, 7 deta_of_birth TEXT 8 );
試したこと
調べて改造しましたが、上手くいきませんでした
補足情報(FW/ツールのバージョンなど)
MySQL 8
出典は明示する習慣は身につけましょう。
大変失礼致しました。
出典はこちらです。https://github.com/deatiger/basic-rest-api/blob/develop/README.md
Youtubeで動画に出している方のものです。
質問は編集できます。
また、SQLには方言があります。
そのまま動くと思わない方が良いですし、
移行しようとするのではなく、「何をしたいか」から「その言語での書き方」を考えるべきです。
もし公式参照して書いたコードで出来てないならそのコードと起きている問題を記載してください。
-> って入ってませんよね。コピペで再現するときに邪魔です。
また、やろうとしていることはテーブルの作成であって、データの取得ではないです。
タイトル、本文の表現を見直してください。
「->」に関しては、配慮不足でした。申し訳ございません。
「また、やろうとしていることはテーブルの作成であって、データの取得ではないです」とのご指摘はその通りだと思いますが、私としては時刻を取得してテーブルに入れるイメージです。
ここの掲示板では Markdown の使い方を覚えてください。
質問や回答のURLは https://teratail.com/help/question-tips#questionTips3-7 の [リンク] で [リンク先の説明](http...) に修正してください。