sql語言組成部分:
ddl: 資料定義語言(database、table、view)
dml: 資料操作語言(select、insert、replace、update、delete)
完整性定義語言:ddl的一部分功能
主鍵、外來鍵、惟一鍵、條件、非空、事務
檢視定義:虛表,儲存下來的select語句
事務控制:
嵌入式sql和動態sql:
dcl:授權
資料型別的功用:
1、儲存的值型別;
2、佔據的儲存空間;
3、定長,變長;
4、如何被索引及排序;
5、是否能夠被索引;
資料字典:系統編目(system catalog)
儲存資料庫伺服器上的元資料
元資料:
關係的名字
每個關係的各字段的名字
各字段的資料型別和長度
約束每個關係上的檢視的名字及檢視的定義
授權使用者的名字
使用者的授權和帳戶資訊
統計類的資料:
每個關係欄位的個數;
每個關係中行數;
每個關係的儲存方法;
儲存元資料的資料庫:
information_schema
mysql
performance_shcema
資料型別:
字元型數值型
精確數值型
近似數值型
單精度浮點型
雙精度浮點型
日期時間型
日期型時間型
日期時間型
時間戳布林型
內建型別
enum, set
字元型:
char
varchar
tinytext
text
mediumtext
longtext
binary
varbinary
tinyblob
blob
mediumblob
longblob
enum
set數值型:
tinyint
smallint
mediumint
intbigint
decimal
float
doubal
bit日期時間型:
date
time
datetime
timestamp
year
char、varchar和text幾種字元型常用的屬性修飾符:
not null非空約束
null允許為空
default 'string'預設值,不適用於text型別
character set '字符集'設定預設字符集
collation '規則'排序規則
檢視當前的字符集
show variables like '%char%';
檢視可用的字符集
show character set;
設定字符集
set character_set_filesystem = utf8;
檢視可用的排序規則
show collation;
binary、varbinary和blob幾種字元型常用的屬性修飾符:
not null 非空約束
null 允許為空
default不適用於blob
整型的常用屬性修飾符:
auto_increment自動增長(前提:非空,且惟一;支援索引,非負值;)
unsigned無符號
null
not null
default
浮點型常用修飾符:
not null
null
default
unsigned
日期時間型的修飾符:
not null
null
default
enum和set的修飾符:
not null
null
default ''
mysql sql_mode: sql模式
traditional, strict_trans_tables, or strict_all_tables
設定伺服器變數的值:(僅用於支援動態的變數)
支援修改的伺服器變數:
動態變數:可以mysql執行時修改
靜態變數:於配置檔案中修改其值,並重啟後方能生效;
伺服器變數從其生效範圍來講,有兩類:
全域性變數:伺服器級別,修改之後僅對新建立的會話有效;
會話變數:會話級別,僅對當前會話有效;
會話建立時,從全域性繼承各變數;
檢視伺服器變數:
mysql> show variables [like ''];
mysql> select @@.varilable_name;
mysql> select * from information_schema.global_variables where variable_name='some_variable_name';
mysql> select * from information_schema.session_variables where variable_name='some_variable_name';
修改變數
前提:預設僅管理員有許可權修改全域性變數
mysql> set variable_name='value';
注意:無論是全域性還是會話級別的動態變數修改,在重啟mysqld後都會失效;想永久有效,可定義在配置檔案中的相應段中[mysqld];
mysql中字元大小寫:
1、sql關鍵字及函式名不區分字元大小寫;
2、資料庫、表及檢視名稱的大小區分與否取決於低層os及fs
3、儲存過程、儲存函式及事件排程器的名字不區分大小寫,但觸發器區分;
4、表別名區分大不寫;
5、對字段中的資料,如果字段型別為binary型別,則區分大小寫;非binary不區分大小寫;
db2與mysql編目 DB2 資料庫編目
方法一 命令執行方法 db2 catalog tcpip node node name remote server ip server server port l node name 所要編目的節點名,任意起。節點名在一台機器上必須是唯一的,不能跟已有的節點名重複。可通過db2 list node ...
Mysql命令mysql 連線Mysql資料庫
mysql命令格式 mysql h主機位址 u使用者名稱 p使用者密碼 1 連線到本機上的mysql 首先開啟dos視窗,然後進入目錄mysql bin,再鍵入命令mysql u root p,回車後提示你輸密碼。注意使用者名稱前可以有空格也可以沒有空格,但是密碼前必須沒有空格,否則讓你重新輸入密碼...
31期 正確重置MySQL密碼
誰都不想弄丟家門鑰匙,但不管多麼小心,時間長了,這樣的事情總會發生幾次。mysql密碼也是一樣,把它寫在文件上不太安全,記在腦子裡又難免會忘記。如果你忘記了mysql密碼,如何重置它呢?下面是 錯誤答案 首先停止mysql服務,然後使用skip grant tables引數啟動它 shell etc...