2016-11-28 22 views
0

上の構文エラー、私はちょうど私がこの上に生成さfile.sqlに基づいて新しいデータベースを作成しようとしました:MySQLの#1064 - varchar型のフィールド

http://ondras.zarovi.cz/sql/demo/?keyword=default

は、だから私は、SQLを生成するよりも、保存をクリックそれをメモ帳++にコピーしてsqlを保存し、それをphpmyadminの新しいデータベースにインポートしました。 (Mysql 5.7)

ここで私の問題は、私は1064エラーがあります。私はインターネット上でチェックし、すべての答えは私が日付(タイムスタンプ)についてどこで見つけることができ、それはvarcharの1つのように見えます。ここ

#1064 - Erreur de syntaxe près de 'NOT NULL DEFAULT 'NULL', 

    `Cl_forename` VARCHAR NOT NULL DEFAULT 'NULL', 

    `C' à la ligne 4 

そして、これは最初のテーブルのちょうど半分である私のfile.sql

CREATE TABLE `Clients` (

    `id_client` INTEGER NULL AUTO_INCREMENT DEFAULT NULL, 

    `Cl_num_member` SMALLINT NOT NULL DEFAULT '0', 

    `Cl_name` VARCHAR NOT NULL DEFAULT 'NULL', 

    `Cl_forename` VARCHAR NOT NULL DEFAULT 'NULL', 

    `Cl_nickname` VARCHAR NOT NULL DEFAULT 'NULL', 

    `Cl_geolocation` MEDIUMTEXT NULL DEFAULT NULL, 

    `Cl_date_license_start` DATE NULL DEFAULT NULL, 

    `Cl_date_license_stop` DATE NULL DEFAULT NULL, 

    `Cl_special_requirement` MEDIUMTEXT NULL DEFAULT NULL, 

の最初の部分である:

はここでエラーメッセージです。あなたが見ることができるように、いくつかの最初の行はあなたが見ることができ、そして次にないことを知っている、私は解決策であるかどうかを複数の可能性をテストしたが、どちらが最善であるか分からない。 ...任意の助けをいただければ幸いです

(またはどちら実際に動作します)

EDIT:

私はすべてのvarchar型、テキスト、int型と私が持っていた日付に値を追加し、そして今、私はこれを得ました問題:

`Cl_num_member` SMALLINT(11) NOT NULL DEFAULT NULL, 

私は、ウェブ上で見た:これは、コードの行がある

#1067 - default value invalide for 'Cl_num_member' 

サイトでは、intの場合、数値を示すために正確に(11)を必要としますが、値は重要ではありません。それはそうではないように見えるからです。

ここでのポストへのリンク: What is the size of column of int(11) in mysql in bytes?

+0

エラーが右 '\' Cl_name \ 'VARCHAR'後、MySQLはそれを報告する正確なポイントであるべきです。あなたは決して列のサイズを設定しません! –

+1

NULLの代わりに 'NULL'文字列にデフォルト設定されていますが、なぜデフォルトがnullに設定されているのですか?デフォルトでは、デフォルトはNULLです。また、整数フィールドの文字列 '0'にもデフォルトが間違っているようです。 :P – xQbert

+0

私はこのようにしました。なぜなら、後でデータベースを完成させるときにこの情報を提供する義務はありますが、今は空です。物事を行う正しい方法を見つけることは本当に難しいので、多くの情報x) –

答えて

0

問題は、あなたのvarchar列のどれもあなたの投稿コードCl_forename VARCHAR NOT NULL DEFAULTごとに指定したサイズを持っていないです。これはかなりCl_forename VARCHAR(100) NOT NULL DEFAULT

`Cl_name` VARCHAR NOT NULL DEFAULT 'NULL', 

    `Cl_forename` VARCHAR NOT NULL DEFAULT 'NULL', 

    `Cl_nickname` VARCHAR NOT NULL DEFAULT 'NULL',