Mac環境でのMySQLのインストールと基本コマンドの使用
29454 ワード
MySQL
は、すべてのデータを大きな倉庫に置くのではなく、異なるテーブルにデータを保存するリレーショナル・データベース管理システムです.これにより、速度が向上し、柔軟性が向上します.MySQL
で使用されるSQL
言語は、データベースにアクセスするために最も一般的な標準化言語です.MySQL
をウェブサイトデータベースとして選択しています.MySQL
は、マルチユーザ、マルチスレッドの関係型データベース管理システムである.ワークモードは、クライアント/サーバ構造に基づいています.現在、ほとんどのオペレーティングシステムMySQL
は、オープン、高速、マルチスレッド、マルチユーザのSQLデータベースサーバ一.MySQLのインストール
MySQL
を研究するには、まずMySQL
をインストールします.ここでは、Mac
環境でのインストールとデータベース操作だけを紹介します.1.ダウンロード
MySQL
MySQLの公式サイトのダウンロードページを直接開いて、mac OS
システムを選んだ後に、DMG
フォーマットを選んでソフトウェアをダウンロードします次に、次のページにジャンプします.ログインしないか、直接ダウンロードすればいいだけです(もちろん登録してログインすることもできます)
dmg
のpkg
ファイルに従ってインストールすればいいのですが、注意が必要なのはMySQL
のアイコンMySQL
はデフォルトが開いている(インストール時にデフォルト設定でインストールされている場合)ここまで
MySQL
は基本的にインストールが完了しており、構成を変更する必要はありません.取付
Navicat for MySQL
Navicat for MySQL
は、MySQL
専用の高性能データベース管理および開発ツール3.21
以上のMySQL
データベースサーバMySQL
環境をインストールするときに設定されたパスワード二.
MySQL
の基本命令1.基本コマンド
MySQL
のうちWindows
)、以下のコマンドはいずれも端末でcmd
システムでのみ実行する必要があり、Windows
環境では1-1. サービスの開始/停止
//
:net start
:net start titansql
//
:net stop
:net stop titansql
1-2. データの接続
:mysql -u -p
:mysql -u root -p
// ( )
1-3. リモート接続
Mac
mysql -h ip -u -p
パスワード1-4. その他のコマンド
以下のすべてのコマンドのうち、末尾にセミコロン(
mysql
)がある場合は省略できません.そうしないと、完全なコマンドではありません.コマンドの入力を続行するよう求められます.// ( )
select version();
// ( )
select now();
// ( )
quit exit
2.データベース操作
// 1、
:create database charset=utf8;
:create database titansql charset=utf8;
// 2、
:drop database ;
:drop database titansql;
// 3、
:use ;
:use titansql;
// 4、
select database();
作成完了覚えリフレッシュ
;
3.表の操作// 1、
show tables;
// 2、
:create table ( );
:
//id, name, age:
//auto_increment:
//primary key:
//int, varchar(20): , 20
//not null:
//default:
:create table student(id int auto_increment primary key, name varchar(20) not null, age int not null, gender bit default 1, address varchar(20), isDelete bit default 0);
// 3、
:drop table ;
:drop table student;
// 4、
:desc ;
:desc student;
// 5、
:show create table ;
:show create table student;
// 6、
:rename table to ;
:rename table car to newCar;
// 7、
:alter table add|change|drop ;
:alter table newcar add isDelete bit default 0
4.データ操作
1、
a、
:insert into values(...);
: , , 0,
:insert into student values(0, "tom", 19, 1, " ", 0);
b、
:insert into ( 1, 2,……) values( 1, 2,……);
:insert into student(name, age, address) values("titan", 19, " ");
c、
:insert into values(...),(...),……
:insert into student values(0, "jun", 18, 0, " ", 0), (0, "poi", 22, 1, " ", 0), (0, "coder", 20, 0, " ", 0);
2、
:delete from where ;
:delete from student where id=4;
: ,
3、
:update set 1= 1, 2= 2,…… where ;
:update student set age=16 where id=7;
: ,
4、
:
:select * from ;
:select * from student;
5.クエリーデータ
1、基本文法
Navicat for MySQL
select * from ;
キーワードの後ろにテーブル名があり、データがこのテーブルfrom
の後に表の列名を書きます.もし*が結果セットに表のすべての列を表示するselect
の後の列名部分は、結果セットselect
を使用して列名に別名を付けることができる.//
select * from student;
//
select name, age from student;
//
select name as a, age from student;
重複行の削除
as
の後の列の前にselect
を使用すると、重複する行select gender from student;
select distinct gender from student;
条件クエリー
// 1、
select * from where
// 2、
=
>
<
>=
<=
!= <>
: id 8
:select * from student where id>8;
// 3、
and
or
not
: id 7
:select * from student where id>7 and gender=0;
// 4、 (like)
%:
_:
:
:
select * from student where name like " %";
select * from student where name like " _";
// 5、
in
between...and...
: 8、10、12
:select * from student where id in (8,10,12);
: 6 8
:select * from student where id between 6 and 8;
// 6、
:null ""
:is null
: is not null
:
:select * from student where address is null;
:
:select * from student where address is not null;
// 7、
,not ,
and or , or, ()
集約アクション
distinct
:合計行数を計算することを示し、カッコに*とカラム名を書くことができるcount(*)
:この列の最大値を求めるmax( )
:この列の最小値を求めるmin( )
:この列を求める和sum( )
:この列を求める平均値// :
select count(*) from student;
// :
select max(id) from student where gender=0;
// :
select min(id) from student where gender=0;
// :
select sum(age) from student;
// :
select avg(age) from student;
グループ化
avg( )
select gender,count(*) from student group by gender;
select name,gender,count(*) from student group by gender,age;
グループ化されたデータのフィルタ:
select 1, 2, …… from group by 1, 2, 3,…… having 1,…… ……;
:select gender,count(*) from student group by gender having gender;
select 1, 2, …… from group by 1, 2, 3,……;
とwhere
の違い:-having
はwhere
の後に指定されたテーブルをフィルタリングし、元のデータに対するフィルタリングに属する-from
はhaving
の結果をフィルタリングするツールバーの
group by
select * from order by 1 asc|desc, 2 asc|desc , ……;
:昇順asc
:降順// :
select * from student where isDelete=0 order by age desc;
select * from student where isDelete=0 order by age desc, id desc;
ページング
desc
select * from limit start,count;
インデックス0からselect * from student limit 0,3;
select * from student limit 3,3;
select * from student where gender=1 limit 0,3;
関連付け
// :
1、create table class(id int auto_increment primary key, name varchar(20) not null, stuNum int not null);
2、create table students(id int auto_increment primary key, name varchar(20) not null, gender bit default 1, classid int not null, foreign key(classid) references class(id));
//
select * from students;
/* :
:
1、 A inner join B:
A B
2、 A left join B:
A B , A , null
3、 A right join B:
A B , B , null
*/
select students.name,class.name from class inner join students on class.id=students.classid;
select students.name,class.name from class left join students on class.id=students.classid;
select students.name,class.name from class right join students on class.id=students.classid;
これで、
start
でよく使われるコマンドラインのいくつかも基本的に紹介されました.次に、MySQL
とMySQL
がどのように相互作用しているかを見てみましょう.Python
とMySQL
のインタラクションPython
Python
データベースを操作するには、MySQL
モジュールpymysql
は、pymsql
において動作Python
のモジュールであり、MySQL
はpymysql
バージョンpython3.x
をインストールし、端末は文pip3 install pymysql
1.データベース接続の作成
#
# 1:mysql IP( IP , localhost)
# 2:
# 3:
# 4:
db = pymysql.connect('localhost', 'root', 'titanjun', 'titansql')
# ,
cursor = db.cursor()
# sql
sql = "select version()"
# sql
cursor.execute(sql)
#
data = cursor.fetchone()
print(data)
#
cursor.close()
#
db.close()
2.テーブルの作成
import pymysql
db = pymysql.connect('localhost', 'root', 'jun.0929', 'titansql')
# ,
cursor = db.cursor()
#
# ,
cursor.execute("drop table if exists userinfo")
#
try:
sql = "create table userinfo(id int auto_increment primary key, age int not null)"
cursor.execute(sql)
print(' ')
except:
print(' ')
cursor.close()
db.close()
3.テーブルにデータを挿入する
import pymysql
db = pymysql.connect('localhost', 'root', 'jun.0929', 'titansql')
cursor = db.cursor()
#
sql = 'insert into userinfo values'
for i in range(10, 20):
ageStr = "(0, %d)" % i
addsql = sql + ageStr
try:
cursor.execute(addsql)
# ,
db.commit()
print(' ')
except:
# ,
db.rollback()
print(' ')
cursor.close()
db.close()
4.データの変更/更新/削除
import pymysql
db = pymysql.connect('localhost', 'root', 'jun.0929', 'titansql')
cursor = db.cursor()
# /
sql = 'update userinfo set age=30 where id=4'
#
# sql = 'delete from userinfo where age=16'
try:
cursor.execute(sql)
db.commit()
print(' ')
except:
db.rollback()
print(' ')
cursor.close()
db.close()
5.クエリーデータ
pymysql
:次のクエリ結果セットを取得します.結果セットはオブジェクトfetchone
:すべての戻り行fetchall
:読み取り専用属性であり、rowcount
メソッドの影響を返す行数import pymysql
db = pymysql.connect('localhost', 'root', 'jun.0929', 'titansql')
cursor = db.cursor()
#
sql = 'select * from userinfo where age>16'
try:
cursor.execute(sql)
#
print(cursor.fetchone())
print(' -%d- ' % cursor.rowcount)
result = cursor.fetchall()
for row in result:
print('%d--%d' % (row[0], row[1]))
print(' ')
except:
print(' ')
cursor.close()
db.close()
これで、PythonとMySQLのインタラクションの最も基本的な最も簡単な使用も紹介しました.