SQL
概念: 構造化クエリ言語 (SQL = Structured Query Language)、
プログラミング言語 (データベース クエリおよびプログラミング言語) でもあり、データ アクセスとリレーショナル データベース システムのクエリ、更新、管理に使用できます
ps:異なるデータベース システム間での SQL は完全に互換性はありません。
分類
は操作対象ごとに異なる言語に分割できます
1: データ操作 (データ管理) 言語 DML (Data Management Language)
1): クエリデータ DQL
2): DML の追加、削除、変更
2: データ定義言語 DDL(Data Definition Language) -- 例えばテーブル定義
3: データ制御言語 DCL(Data Control Language)
***** ** *********************************************** *********************************************** **** *****
データベース、テーブル、データの関係
テーブルはデータの伝達者であり、データベースはテーブルのコンテナです
************ ****** ******************************************* ******* ****************************************** **
データベース操作
mysql> show databases; --查看所有的数据库 +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | test | +--------------------+
データベースの作成
構文: create database [存在しない場合] db_name [データ オプション]
例:
create database student_system;
例:
create database if not exists student_system;
-- まず、student_system が既に存在するかどうかを判断します。存在する場合、作成されませんが、例外
例:
C:\WINDOWS\system32>mysqladmin -uroot -p create bbbb
-- mysqladmin を通じて作成できます
******************** **************** ********************************* **
データベースの命名ルール
1: 名前を見て意味を理解してください。アンダースコアの使用をお勧めします
2: 数字、記号、中国語など、任意の文字を使用できます。
データベースを作成します パンパン;
3: 純粋な数字やキーワードを使用した名前付けなど、名前付けが非常に特殊な場合は、修飾子を使用してラップする必要があります (修飾子はバッククォート ` を参照します);
データベース `123456` を作成します;
4: 大文字と小文字を区別するかどうか (これ現在のオペレーティング システムによって異なります);
5: データベースの名前はバッククォートを使用して作成できます
**************************** ************************** **********************
ps:データベースを作成するとディレクトリが形成されますが、データベース名が特殊文字の場合はファイル名がエンコード形式で表現されます
。データベース選択情報を保存するディレクトリの下の .opt ファイル;
**************************** ******** *****************************************
データベース関連操作
1: show databases; --查看所有的数据库 2: drop [if exists] database bbbb; --删除指定的数据库 3: show create database student_system; --查看数据库(student_system)创建信息 +----------------+------------------------------------------------------------------------+ | Database | Create Database | +----------------+------------------------------------------------------------------------+ | student_system | CREATE DATABASE `student_system` /*!40100 DEFAULT CHARACTER SET gbk */ | +----------------+------------------------------------------------------------------------+ 4: alter database db_name [指定的操作] --修改数据库信息 例: alter database student_system character set 'utf8';
* *********************************************** *** *********************************************** ** **********************
テーブル関連操作
テーブル作成
作成構文: create table [存在しない場合] tbl_name (列構造) [オプション]
Tableはデータのキャリアであり、データベースはテーブルのコンテナであるため、テーブルを作成する前に、テーブルが属するデータベースを決定する必要があります
テーブルは特定のデータベースに属している必要があります
1: を作成できます。テーブル内のテーブル 名前の前に所属するデータベースを指定します
create table `student_system`.student( name varchar(20), sex varchar(3), age int );
2: まず use db_name を使用して現在のデフォルトのデータベースを指定し、次にテーブルを作成します
use student_system create table teacher( name varchar(20), sex varchar(3), age int );
3: show tables --View;すべてのテーブルを指定しますが、最初に現在のデフォルトのデータベースも指定します
4: show create table Teacher; -- 作成テーブル (Teacher) の作成情報を表示します
show create table TeacherG
5: 説明する Teacher;テーブル (教師)
+-------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+-------+ | name | varchar(20) | YES | | NULL | | | sex | varchar(3) | YES | | NULL | | | age | int(11) | YES | | NULL | | +-------+-------------+------+-----+---------+-------+ desc teacher; --可以简写describe teacher;
6: テーブルを削除 [存在する場合] tbl_name; --テーブルを削除します (ラップされたテーブル構造)
例: テーブルを削除する Student;
例: テーブルが存在する場合は学生を削除します;
***** ************** *********************************** *************** ********************************** *******
テーブルの変更
テーブル名の変更
语法:rename table old_table_name to new_table_name 例: rename table student to student_1; 例: rename table student_2 to student_1, teacher to teacher_1; --可以同时修改多个表名 例: rename table student_1 to `test`.student_2; --可以跨数据库重命名, 可以通过这个表重命名的方式来对数据库重命名
列の定義の変更
列の追加(add)
alter table student_1 add id int;
列の削除(drop)
alter table student_1 drop id;
列の定義の変更(modify)
alter table student_1 modify name varchar(10);
列の名前を変更(変更)
alter table student_1 change age student_age int(3);
*******************************************************************************************************
表数据操作(增删改查)
插入数据(创建数据create)
语法: insert into 表名(字段列表) values(值列表)
例: insert into teacher_1(name,age) values('胖胖', 18);
例: insert into teacher_1 values('小胖','男', 16); --如果没有指定字段列表,那么要插入的值要和列中的字段顺序一样
insert into teacher_1(name,age) values('小未', 19);
insert into teacher_1 values('阿哈','女',18);
查询数据(读取数据read)
语法: select 字段列表 from 表名 where 查询条件
例: select name,age from teacher_1;
例: select * from teacher_1; --如果字段列表使用*号来代替, 那么表示查询所有的字段
例: select * from teacher_1 where name = '胖胖'; --可能使用查询条件进行数据过滤,拿到想要的数据;
例: select * from teacher_1 where 1; --where 1表示条件永远成立
select * from teacher_1 where 0;
修改数据(update)
语法: update 表名 set 字段=新值,... where 条件
例: update teacher_1 set sex='女' where name = '小胖';
update teacher_1 set sex = '保密', age = 15, name = '阿呵' where name = '阿哈';
删除数据(delete)
语法: delete from 表名 where 条件
例: delete from teacher_1 where age = '18';
例: delete from teacher_1; --如果没有条件进行删除,则会删除整个表的删除(不同于drop table teacher_1)
ps: 在删除数据时,一定要给一个具有严格逻辑判断条件,不然很容易造成数据误删除,最后造成数据的损失
curd(create update read delete)--增删改查
以上がMysqlライブラリテーブル操作のサンプルコードの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。