mysql是乙個關係型資料庫管理系統,是目前最好的 rdbms (relational database management system,關聯式資料庫管理系統) 應用軟體之一。
優點:
①開源的資料庫軟體,關鍵是免費的!
②體積小,速度快,總體擁有成本低,招人成本比較低。
③一般中小型**的開發都選擇 mysql 作為**資料庫。
1.建立資料庫
create
database
ifnot
exists testdatabase;
2.刪除資料庫
drop
database
ifexists testdatabase;
3.使用資料庫
use school;
4.檢視資料庫
show
database
;
①數值:
tinyint 十分小的資料 1個位元組
smallint 較小的資料 2個位元組
mediumint 中等大小 3個位元組
int 標準的整數 4個位元組(常用)
bigint 較大的資料 8個位元組
float 浮點數 4個位元組
double 浮點數 8個位元組 (精度問題)
decimal 字串形式的浮點數,一般用於金融計算的時候
②字串:
char 字串固定大小 0-255
varchar 可變字串 0-65535(常用)
tinytext 微型文字 2^8-1
text 文字串 2^16-1 (儲存大文字)
③時間日期:
date yyyy-mm-dd,日期
time hh:mm:ss 時間格式
datetime yyyy-mm-dd hh:mm:ss 最常用的時間格式
timestamp 時間戳 1970.1.1到現在的毫秒數
year 年份表示
④null:
沒有值,未知
注意,不要使用null進行運算,結果為null
①unsigened:
無符號的整數
宣告該列不能宣告負數
②zerofill:
0填充的
10的長度 1 – 0000000001 不足位數用0 填充
③自增:
通常理解為自增,自動在上一條記錄的基礎上+1
通常用來設計唯一的主鍵 index,必須是整數類似
可以自定義設定主鍵自增的起始值和步長
④非空 null not null
假設設定為 not null,如何不給他賦值,就會報錯
null 如果不填寫,預設為null
⑤預設:
設定預設的值!
①建立:
--目標:建立乙個schoo1資料庫
--建立學生表(列,字段)使用sql 建立
--學號int 登入密碼varchar(20)姓名,性別varchar(2),出生日期(datatime),家庭住址,emai1--注意點,使用英文(),表的名稱和字段盡量使用括起來
-- auto_ increment 自增
--字串使用單引號括起來!
--所有的語句後面加,(英文的),最後乙個不用加
-- primary key 主鍵,一般- 乙個表只有乙個唯一 -的主鍵!
create
database school
create
table
ifnot
exists
`student`
(`id`
int(4)
notnull
auto_increment
comment
'學號'
,`name`
varchar(30
)not
null
default
'匿名'
comment
'姓名'
,`pwd`
varchar(20
)not
null
default
'123456'
comment
'密碼'
,`***`
varchar(2
)not
null
default
'男'comment
'性別'
,`birthday`
datetime
default
null
comment
'出生日期'
,`address`
varchar
(100
)default
null
comment
'家庭住址'
,`email`
varchar(50
)default
null
comment
'郵箱'
,primary
key(
`id`))
engine
=innodb
default
charset
=utf8
②格式:
create
table[if
notexists
]`表名`(
`欄位名` 列型別[屬性]
[索引]
[注釋]
,`欄位名` 列型別[屬性]
[索引]
[注釋],.
..`欄位名` 列型別[屬性]
[索引]
[注釋]
)[表型別]
[表的字符集設定]
[注釋]
1.5 資料表的型別
①innodb和myisam:
myisam
innodb
事務支援
不支援支援
資料行鎖定
不支援支援
外來鍵約束
不支援支援
全文索引
支援不支援
表空間的大小
較小較大,約為myisam的兩倍
注意的是:在mysql5.6版本以後innodb也支援了全文檢索,但是只支援英文的檢索。有興趣的小夥伴可以自己去了解下兩種表的型別底層儲存方式的區別,在此我不多講。
常規使用操作:
②在物理空間存在的位置:
所有的資料庫檔案都存在data目錄下,乙個資料夾就對應乙個資料庫
本質還是檔案的儲存
mysql 引擎在物理檔案上的區別
③設定資料庫字符集編碼:
chartset=utf8
12
不設定的話,會是mysql預設的字符集編碼-(不支援中文)
可以在my.ini中配置預設的編碼
character
-set
-server=utf8
①修改:
-- 修改表名 alter table 舊表面 as 新錶名
alter
table student rename
as student1
-- 增加表的字段 alter table 表名 add 欄位名 列屬性
alter
table student1 add age int(11
)-- 修改表的字段(重新命名,修改約束)
alter
table student1 modify age varchar(11
)-- 修改約束
alter
table student1 change age age1 int(1
)-- 字段重新命名
-- 刪除表的字段
alter
table student1 drop age1
②刪除:
-- 刪除表
drop
table
ifexists student1
所有的建立和刪除操作盡量加上判斷,以免報錯
③注意點:
mysql擴充套件:mysql學習彙總
路漫漫其修遠兮,吾必將上下求索~
MySql 1 運算元據庫和資料表
1 數值 型別用途 說明tinyint 十分小的資料 1個位元組 smallint 較小的資料 2個位元組 mediumint 中等大小的資料 3個位元組 int 常用 標準的整數4個位元組 bigint 較大的資料 8個位元組 float 浮點數4個位元組 double 浮點數8個位元組 deci...
MySQL 運算元據庫
資料庫是指長期儲存在計算機內,有組織的 可共享的資料集合。簡而言之,資料庫就是乙個儲存資料的地方。只是,其儲存方式有特定的規律。這樣可以方便處理資料。資料庫的操作包括建立資料庫和刪除資料庫。這些操作都是資料庫管理的基礎 建立資料庫是指在資料庫系統中劃分一塊空間,用來儲存相應的資料。這是進行表操作的基...
C 運算元據庫表和資料庫
1 c 建立資料庫表 private void creattable string name 建立資料庫源資料表,name為表名 2 c 更新資料庫表 con new sqlconnection s con.open string sqlstr update 系統引數 set 內容 content ...