"""
1、什麼是資料庫:管理資料的系統 - 安裝某種管理資料的系統 - 管理的物件本質是檔案
2、儲存資料的位置:記憶體、硬碟
3、什麼是系統:執行在硬體基礎上,管理其他軟體
"""# 資料庫的組成
"""庫:存放多張表 - 資料夾
表:包含多條相同結構的記錄 - 檔案
記錄:包含多個key-value鍵值對的一條資料 - 二進位制資料
字段:描述資訊 - 資訊本身 == key-value - 二進位制資料
stuid name age gender
1 bob 18 男
2 tom 17 女
...teacher
..."""
資料庫的分類# 1)關係與非關係
# 關係:資料庫中表與表之間有聯絡 - mysql
# 非關係:沒有表概念 - redis、mongodb(介於關係與非關係)
# 2)記憶體與硬碟
# 硬碟:資料可以永久儲存 - mysql、mongodb
# 記憶體:資料的訪問效率極高 - redis、memcache
# 3)sql與nosql
# sql:資料庫操作通過sql語句
# nosql:資料庫操作就是key-value形式(value就是一條記錄)
# stu -
# stus - [, ]
# name - 'jerry'
1)遊客登陸(不一定能登入,登入了也啥都不能幹)
>: mysql
2)賬號密碼登入
>: mysql -u root -p
再輸入密碼,沒有任何提示,沒有密碼直接回車
3)連線指定伺服器的mysql
>: mysql -h ip位址 -p 埠號 -u 賬號 -p
回車後敲入密碼
eg:>: mysql -hlocalhost -p3306 -uroot -p
4)退出資料庫
>: quit
>: exit
1)檢視當前登入的使用者
mysql>: select user();
2)root許可權下可以檢視所有使用者資訊
mysql>: select * from mysql.user;
mysql>: select * from mysql.user \g
mysql>: select user,password,host from mysql.user;
3)root登入下,刪除遊客(操作後要重啟mysql服務)
mysql>: delete from mysql.user where user='';
4)root登入下,修改密碼(操作後要重啟mysql服務)
mysql>: update mysql.user set password=password('root') where host='localhost';
5)沒有登入
>: mysqladmin -u使用者名稱 -p舊密碼 -h網域名稱 password "新密碼"
eg>: mysqladmin -uroot -p12345678 -hlocalhost password "root"
6)root登入下,建立使用者
mysql>:grant 許可權們 on 資料庫名.表名 to 使用者名稱@主機名 identified by '密碼';
1)檢視已有資料庫
mysql>:show databases;
2)選擇某個資料庫
mysql>:use 資料庫名
3)檢視當前所在資料庫
mysql>:select database();
4)建立資料庫
mysql>:create database 資料庫名 [charset=編碼格式];
eg>: create database owen;
eg>: create database zero charset=utf8;
eg>: create database tank;
5)檢視建立資料庫的詳細內容
mysql>:show create database 資料庫名;
eg>: show create database owen;
6)刪除資料庫
mysql>: drop database 資料庫名;
eg>: drop database tank;
前提:先選取要操作的資料庫
1)檢視已有表
mysql>:show tables;
2)建立表
mysql>:create table 表名(字段們);
eg>: create table student(name varchar(16), age int);
eg>: create table teacher(name varchar(16), age int);
3)檢視建立表的sql
mysql>:show create table 表名;
eg>: show create table student;
4)檢視建立表的結構
mysql>:desc 表名;
5)刪除表
mysql>: drop table 表名;
eg>: drop table teacher;
1)檢視某個資料庫中的某個表的所有記錄,如果在對應資料庫中,可以直接查詢表
mysql>: select * from [資料庫名.]表名;
注:*代表查詢所有字段
2)給表的所有字段插入資料
mysql>: insert [into] [資料庫名.]表名 values (值1,...,值n);
eg:如果給有name和age兩個欄位的student表插入資料
1條》:insert into student values ('bob', 18);
多條》:insert into student values ('張三', 18), ('李四', 20);
指定庫》:insert owen.student values ('張三', 18), ('李四', 20);
3)根據條件修改指定內容
mysql>: update [資料庫名.]表名 set 欄位1=新值1, 欄位n=新值n where 字段=舊值;
eg:> update student set name='王五', age='100' where name='張三';
注:i) 可以只修改部分字段 ii) 沒有條件下,所有記錄都會被更新
eg:> update student set name='呵呵';
4)根據條件刪除記錄
mysql>: delete from [資料庫名.]表名 where 條件;
eg:> delete from student where age<30;
資料庫 資料庫基本操作
操作練習 修改表結構 表資料的操作 實現 1 建立表 create table student stu no char 12 not null primary key,stu name varchar 20 not null gender tinyint 1 default1,age tinyint...
資料庫基本操作
1.查詢一周之內的資料 select from 表名 where date sub curdate interval 7 day date 欄位名 2.插入 年 月 日 時 分 秒的時間 pstmt.settimestamp 7,new timestamp system.currenttimemil...
資料庫基本操作
登入資料庫系統 mysql h localhost u root p 檢視已存在的資料庫 show databases 檢視預設儲存引擎 show variables like storage engine 建立資料庫 create database 想建立的資料庫名字 刪除資料庫 drop dat...