數據庫的配置
通過配置文件統一配置的目的:統一管理 服務端(mysqld),客戶端(client)
配置mysqld(服務端) 的編碼為utf8,那么再創建的數據庫,默認編碼都是采用utf8
配置流程:
(1) 在mysql安裝根目錄下,創建配置文件:my.ini
mac下配置文件名叫 my.cnf
(2) 設置配置文件內容並保存
修改數據庫信息
修改字符編碼
mysql>: alter database 數據庫名 charset = 編碼格式
表的修改
修改表名
mysql>: alter table 表名 change 舊字段 新字段 類型(長度)
修改字段名:
mysql>: alter table 表名 change 舊字段 新字段 類型(長度);
修改字段屬性
mysql>:alter table 表名 modify 字段 新類型長度;
創建表的完整語法
mysql>: create table 表名 (屬性名1 類型(長度) 約束 ,
... ... ...
屬性名N 類型(長度) 約束
) engine = 引擎 default charset = utf8;
數據庫表的引擎:驅動數據的方式 - 數據庫優化
mysql>: create table t11(id int)engine = innodb;
mysql>: create table t12(id int)engine = myisam;
mysql>: create table t13(id int)engine = blackhole;
mysql>: create table t14(id int)engine = memory;
數據庫的模式:
mysql支持的數據類型
整型
1.tinyint: 一個字節 取值范圍 -128~127
2.smallint: 兩個字節 取值范圍 -32768~32767
3.mediumint:三個字節
4.int: 四個字節 取值范圍 -2147483648~2147483647
5.bigint: 8個字節
約束
小練習
2、創建一個字符集為utf8的數據庫,將數據庫字符集修改為gbk
create database kll charset = 'utf8';
alter database kll charset = 'gbk';
3、創建一個學生student表,有主鍵id字段,name唯一字段、age字段、height字段、mobile字段
主鍵為自增字段
name和mobile聯合唯一
age和height不可以出現負數
增加記錄時,name和height字段必須賦值
增加記錄時,age未賦值,用0填充,mobile未賦值,用Null填充
create table student2(id int primary key auto_increment,name varchar(20) not null unique key,age int check( age >0) default 0,height int check( height >0) not null,mobile int(15) default null,unique(name,mobile));
一次性插入一條數據
insert into student3 values(1,'tom',10,100,10000);
再一次性插入五條數據
insert into student3(name,age,height,mobile) values('bob',10,100,10000),('mary',10,100,1000),('aels',100,10,1000),('yu',10,100,1000),('uil',10,20,1000);
清空表,並清空主鍵自增記錄
truncate table student3;