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

MySQLで同じ名前のビューとテーブルを持つことは可能ですか?


いいえ、MySQLのビューとテーブルに同じ名前を付けることはできません。

まず、デモテーブルを作成しましょう-

mysql> create table view_Table_Demo
   -> (
   -> Id int,
   -> Name varchar(20)
   -> );
Query OK, 0 rows affected (0.80 sec)

これで、insertコマンドを使用してテーブルにいくつかのレコードを挿入できます。クエリは次のとおりです-

mysql> insert into view_Table_Demo values(100,'Larry');
Query OK, 1 row affected (0.17 sec)
mysql> insert into view_Table_Demo values(101,'Mike');
Query OK, 1 row affected (0.20 sec)
mysql> insert into view_Table_Demo values(102,'Sam');
Query OK, 1 row affected (0.14 sec)

selectステートメントを使用して、テーブルのすべてのレコードを表示します。クエリは次のとおりです-

mysql> select *from view_Table_Demo;

これが出力です-

+------+-------+
| Id | Name    |
+------+-------+
| 100 | Larry  |
| 101 | Mike   |
| 102 | Sam    |
+------+-------+
3 rows in set (0.00 sec)

ここで、ビューとテーブルに同じ名前を付けようとするとエラーが発生します。クエリとエラーは次のとおりです-

mysql> create VIEW view_Table_Demo AS SELECT * from view_Table_Demo;
ERROR 1050 (42S01): Table 'view_Table_Demo' already exists
NOTE: To avoid the above error, try to give different name.

  1. データベーステーブルからいくつかのデータを選択し、MySQLと同じデータベース内の別のテーブルに挿入します

    テーブルから別のテーブルにデータを挿入するには、INSERTINTOステートメントを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1      (      Id int,      FirstName varchar(20),      Age int      ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいく

  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