কম্পিউটার টিউটোরিয়াল

MySQL에서 VARCHAR 크기 지정 없이 테이블 생성 시 에러 발생

MySQL에서 VARCHAR 타입은 반드시 길이(최대 문자 수)를 지정해야 합니다. 크기 없이는 문법 에러가 발생합니다.

크기 없이 생성 시도 (에러)

mysql> CREATE TABLE DemoTable1821 (
    -> Id INT,
    -> FirstName VARCHAR,
    -> LastName VARCHAR
    -> );
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 'VARCHAR, LastName VARCHAR )' at line 4

크기 지정 후 생성 성공

mysql> CREATE TABLE DemoTable1821 (
    -> Id INT,
    -> FirstName VARCHAR(10),
    -> LastName VARCHAR(10)
    -> );
Query OK, 0 rows affected (0.00 sec)

데이터 삽입 및 조회

mysql> INSERT INTO DemoTable1821 VALUES(1,'John','Smith');
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO DemoTable1821 VALUES(2,'John','Doe');
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO DemoTable1821 VALUES(3,'Adam','Smith');
Query OK, 1 row affected (0.00 sec)
mysql> SELECT * FROM DemoTable1821;
+------+-----------+----------+
| Id   | FirstName | LastName |
+------+-----------+----------+
|    1 | John      | Smith    |
|    2 | John      | Doe      |
|    3 | Adam      | Smith    |
+------+-----------+----------+
3 rows in set (0.00 sec)

규칙: VARCHAR(n)에서 n은 0~65535(행 크기 제한 내). CHAR(n)도 크기 필수. TEXT, BLOB 계열은 크기 지정 안 함. 가변 길이 문자열은 항상 VARCHAR(적절크기)로 선언하세요.

  1. MySQL-এ VARCHAR ফিল্ডের আকার বাড়ালে তার ভেতরের ডেটা প্রভাবিত হয় কি?

  2. MySQL LIKE ব্যবহার করে প্রথম টেবিল থেকে নতুন টেবিল তৈরির পদ্ধতি

  3. MySQL-এ INET_ATON() দিয়ে IP ঠিকানা INTEGER-এ কনভার্ট করা

  4. MySQL-এ LEFT JOIN ব্যবহার করে টেবিল A-র ডেটা টেবিল B-এ না থাকলে টেবিল C-তে ইনসার্ট করা