資料庫基礎知識

2021-10-20 17:36:34 字數 2772 閱讀 3194

1.1 表是資料庫的基本組成單元,所有的資料都以**的形式組織,目的是可讀性強。

1.2 表包括 行和列

1.2.1 行 :被稱為資料/記錄(data)

1.2.2 列 :被稱為字段(column)

1.3 每個欄位都有 名字 資料型別 相關的約束 等屬性。

1.4 mysql的兩個引擎

① myisam 資料庫的自帶的資料庫用,相比較 innodb 有自動統計行的特點。平常我們建表時,預設是innodb。

2.1 db :

​ database(資料庫,實際上在硬碟上以檔案的形式存在)

2.2 dbms

​ database management system(資料庫管理系統,常見的有 :mysql oracle db2)

2.3 sql

​ 結構化查詢語言,標準通用的語言。

2.4 關係:

​ dbms 負責執行 sql 語句,通過執行 sql 語句來操作 db 當中的資料

1.1 dql (資料查詢語言):

​ 查詢語句,凡是 select 語句都是 dql

1.2 dml (資料操作語言):

​ insert delete update 對錶當中的資料進行增刪改

1.3 ddl (資料定義語言):

​ create drop alter 對錶結構進行增刪改

1.3 tcl (事務控制語言):

​ commit 提交事務 ,rollback 回滾事務

1.4 dcl (資料控制語言):

​ grant 授權, revoke 撤銷許可權等。

4.1 登入 mysql 資料庫

mysql - uroot -p 密碼

mysql -u username -p -h ip -p 3306[埠號] //遠端連線

4.2 檢視資料庫
show databases; [這個不是 sql 語句,屬於 mysql 的命令]
4.3 建立屬於自己的資料庫
create database helloworld【名字】; [這個不是 sql 語句,屬於 mysql 的命令]
4.4 使用 helloworld 資料
use helloworld; [這個不是 sql 語句,屬於 mysql 的命令]
4.5 檢視當前使用的資料庫中有哪些表:
show tables; [這個不是 sql 語句,屬於 mysql 的命令]
4.6 初始化資料
source 檔案路徑;  //以 sql 結尾的檔案,被稱為 「sql 指令碼」,裡面寫了許多 sql 語句,可以使用 source 來執行 sql 指令碼,完成初始化。
4.7 檢視操作:
desc table1_name;    //檢視表結構 

show create table table1_name\g; //檢視建表語句

select user(); //檢視當前使用者

select database(); //檢視當前資料庫

select version(); //檢視當前mysql的版本

select status(); //檢視當前資料庫的狀態

select variables(); //檢視資料庫的引數

show processlist; //檢視當前mysql伺服器的佇列(使用較為頻繁)

4.8 修改資料庫的引數
select variables(); //檢視資料庫的引數

show variables like "arguments"; //檢視某個引數的值。

set global argumets = value1; //將引數(arguments)的值改為 value1。

4.9 授權使用者以及建立使用者
grant all【許可權:如 insert update 之類的,all 代表全部】 on *.*【表示這個使用者只能在那個資料庫中的那個表進行操作】 to 'usrname'@'ip'【該使用者只能通過個ip位址來登入】 identified by "passwd";

grant all on *.* to 'usrname'@'ip' identified by "passwd"; //建立相關使用者

show grants;//檢視授權

show grants for username@ip;//檢視指定授權

4.10 資料備份
mysqldump -u username -p passwd database_name [table1_name] > /tmp/mysql.sql //備份

mysql -u username -p passed database_name [table1_name] < /tmp/mysql.sql //匯入

[錯誤糾正]

[錯誤1: can't connect to local mysql server through socket]

在 /etc/my.cnf 中輸入以下字段:

[client]

default-character-set=utf8

socket=/tmp/mysql.sock

[mysql]

default-character-set=utf8

socket=/tmp/mysql.sock

並將 sql_mode=no_engine_substitution,strict_trans_tables 注釋掉!

資料庫基礎知識

資料定義 定義基本表 create table 表名 列名 資料型別 列級完整性約束條件 列名 資料型別 列級完整性約束條件 表級完整性約束條件 後面用到的表 1 學生 表 student 由學號 sno 姓名 sname 性別 s 年齡 sage 所在系 sdept 5個屬性組成,可記為 stud...

資料庫 基礎知識

e r模型 實體 聯絡模型 entity relationship model,e r模型 實體是指現實中區別於其他物件的一種 物體 或一件 事情 例如一名學生,乙個專案等等。同乙個型別中所有的實體被叫做實體集,對應於資料庫的一張表,乙個實體則對應於一條記錄。不同的任務之間,就是通過聯絡關係整合到一...

資料庫基礎知識

一 1 ddl 資料庫定義語句,建立資料表 dml 資料庫操作語言 dcl 資料控制語言 dql 資料查詢語言 2 資料查詢,sql語句 看課堂作業 查詢結果是表。3 聚集函式的一般格式 會使用 distinct all 列名 4 檢視 從乙個或幾個基本表 或檢視 匯出的表,與基本表不同,是乙個虛表...