MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLでのNCHARの使用は何ですか?


MySQLは、CHAR列が事前定義された文字セットを使用する必要があることを示す方法としてNCHARを定義しています。 Utf8は、MySQLによって事前定義された文字セットとして使用されます。

以下の例では、「Student1」という名前のテーブルを作成しています。この表では、3つの列のデータ型を、互いに同等の3つの異なる宣言スタイルで宣言しています。それはすべてNCHARによるものです。

mysql> Create table Student1(Name Char(10) character set utf8, Address NATIONAL CHARACTER(10), FatherName NCHAR(10));
   Query OK, 0 rows affected (0.25 sec)

以下のクエリを使用してテーブルのステータスを確認すると、すべての宣言スタイルが同じであることがわかります。

mysql> show create table Student1\G

*************************** 1. row ***************************
Table: Student1
Create Table: CREATE TABLE `student1` (
    `Name` char(10) CHARACTER SET utf8 DEFAULT NULL,
    `Address` char(10) CHARACTER SET utf8 DEFAULT NULL,
    `FatherName` char(10) CHARACTER SET utf8 DEFAULT NULL
    ) ENGINE = InnoDB DEFAULT CHARSET = latin1

1 row in set (0.00 sec)

  1. MySQL IGNORE INSERTステートメントの用途は何ですか?

    基本的に、IGNORE INSERTステートメントは、MySQLテーブルへの重複データの挿入を防ぐために使用されます。 INSERTコマンドではなくINSERTIGNOREコマンドを使用する場合、レコードが既存のレコードを複製しない場合、MySQLは通常どおりにそれを挿入しますが、レコードが複製する場合、IGNOREキーワードはMySQLに生成せずにサイレントに破棄するように指示しますエラー。その構文は次のとおりです- 構文 INSERT INGORE INTO table_name(…) ここで、table_nameは、値を挿入するテーブルの名前です。 例 次の例ではエラーが

  2. MySQLのテーブル名の最大長はどれくらいですか?

    MySQlバージョン8.0.12によると、テーブル名の最大長は64文字です。 インストールされているMySQLのバージョンを確認してください。 mysql> select version(); 以下は出力です。 +-----------+ | version() | +-----------+ | 8.0.12 | +-----------+ 1 row in set (0.03 sec) テーブル名の最大長は作成時に確認できます。 64文字を超える文字を指定すると、テーブルは作成されず、エラーがスローされます。 64文字を超えるテーブル名を持つテーブルを作成します