在mysql資料庫中有許多常見的字段約束,所謂的字段約束就是在設定欄位時需要給字段新增一些「枷鎖」。
常見的字段約束有:
int(n) 資料型別及允許資料的個數
not null 非空
default 預設值
primary key 主鍵約束,不能為空,不能重複,
一般情況下一張表中至少要有乙個主鍵
auto_increment 自增,一般配合數值型別的主鍵去使用
unsigned 無符號,正數
unique 唯一約束,具有唯一性(不能重複) 可以為空
foreign key(當前表的外來鍵字段) references 關聯表名(關聯表字段) 外來鍵約束,在建立關係對映時需要進行設定
若是想修改mysql資料庫的密碼,首先需要進入到mysql資料庫中。
之後,顯示所有的資料庫:
進入mysql資料庫中,檢視該庫中的所有的表:
更新user表中對應使用者的authentication_string欄位的值:
update例:user
swt authentication_string=password(你要設定的新密碼) where
user='
需要設定密碼的使用者
'and host=
'使用者所對應的ip位址
';
update如果在登入mysql資料庫時忘記了自己以前設定的密碼。應該如何處理呢?user
set authentication_string=password(123456) where
user='
root
'and host=
'localhost
';
首先修改配置檔案。
在mysql資料庫資料夾中的mysqld檔案下面新增
skip-grant-tables,該命令是用於登入mysql資料庫時跳過許可權認證。
其次重新啟動mysql服務,之後不使用密碼登入root使用者,接下來執行修改密碼的操作,修改密碼完成後退出資料庫並把配置檔案改回來,最後再重啟mysql服務,使用修改後的密碼登入即可。
格式:
create下面是幾個例子:user
'使用者名稱
'@'ip位址
' identified by'密碼
'
新增乙個李四的賬戶,只能允許在本地登入
create新增乙個wangwu使用者,只允許10.10.91.3ip去登入user 'lisi'@'localhost' identified by '
123456';
createuser 'wangwu'@'10.10.91.3' identified by '123456';
create一般而言,公司中的資料庫需要給一些使用者進行授權,使其可以進行遠端連線。user'zl
'@'%
' identified by
'123456
';
語法格式:
grant 許可權 on 庫名.表名 to '使用者名稱'@'位址'例如:給lisi授權,允許操作(select,insert,update)demo6庫中的user表
grant給zl授權,允許操作(select,insert,update) 所有的庫和所有的表select,insert,update
on demo6.userto'
lisi
'@'localhost
';
grant有些使用者可能過段時間就不用了,對於不用的使用者就要進行刪除使用者操作。select,insert,update
on*.*to'
zl'@'
%';
語法格式為:
drop例如刪除wangwu使用者user '使用者名稱'@'ip位址';
dropuser
'wangwu
'@'10.10.91.3
';
MySQL 字段約束與索引
mysql的字段約束共四種 約束名關鍵字 描述主鍵約束 primary key 字段值唯一,且不能為null 非空約束 not null 字段值不能為null 唯一約束 unique 字段值唯一,但可以為null 外來鍵約束 foreign key 保持關聯資料的邏輯性 關於主鍵約束 create ...
mysql 字段約束
5.6 操作表的約束 80 5.6.1 mysql支援的完整性約束 81 5.6.2 設定非空約束 not null,nk 81 5.6.3 設定欄位的預設值 default 82 5.6.4 設定唯一約束 unique,uk 84 5.6.5 設定主鍵約束 primary key,pk 85 5....
mysql欄位約束
為了確保資料的完整性和唯 性,關係型數 據庫通過約束機制來實現目。一.unique 唯一性約束 值不可重複 二.not null 非空約束 值不可為空 三.default 預設值約束 當增加資料時沒有插 值時,會自動插 預設值 四.check 檢查約束 mysql不支援該約束,但寫入語句不會報錯 五...