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

MySQLの列サイズを更新し、そのサイズを増やしますか?


列サイズを更新するには、alterコマンドを使用できます。構文は次のとおりです-

alter table yourTableName change yourColumnName yourColumnName data type;

上記の構文を理解するために、テーブルを作成しましょう。テーブルを作成するためのクエリ-

mysql> create table DataTruncated
   −> (
   −> id int,   
   −> Name varchar(5)
   −> );
Query OK, 0 rows affected (0.64 sec)

上記の「名前」列を見てください。列サイズは5です。5より大きいサイズを指定すると、MySQLは次のエラーを返します-

mysql> insert into DataTruncated values(101,'JohnSmith');
ERROR 1406 (22001): Data too long for column 'Name' at row 1

次に、列「名前」の列サイズを更新します。クエリは次のとおりです-

mysql> alter table DataTruncated change Name Name varchar(200);
Query OK, 0 rows affected (2.01 sec)
Records: 0 Duplicates: 0 Warnings: 0

同じレコードをテーブルに挿入します。列サイズを5から25に更新したため、エラーは表示されなくなりました-

mysql> insert into DataTruncated values(101,'JohnSmith');
Query OK, 1 row affected (0.11 sec)

レコードを表示する-

mysql> select *from DataTruncated;

以下は出力です-

+------+-----------+
| id   | Name      |
+------+-----------+
| 101  | JohnSmith |
+------+-----------+
1 row in set (0.00 sec)

  1. MySQLで個別の列名を表示する

    テーブルを作成しましょう- mysql> create table DemoTable1996 (    ShippingDate datetime,    CustomerName varchar(20) ); Query OK, 0 rows affected (0.84 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1996 values('2019-12-21 10:45:00','Chris'); Query O

  2. MySQLでテーブルを更新し、新しい列にイニシャル名のみを表示します

    イニシャルを取得するには、substring_index()とともにleft()の概念を使用します。 テーブルを作成しましょう- mysql> create table demo13 −> ( −> full_name varchar(100), −> short_name varchar(20) −> ); Query OK, 0 rows affected (1.18 sec) 挿入コマンド-を使用して、いくつかのレコードをテーブルに挿入します。 mysql> insert into demo13(fu