MySql資料庫是比較常用的關係型資料庫,操作用的是sql語句,下麵來說一說MySql的一些基本操作 MySql資料庫是一種C/S型的模式,即客戶端/伺服器端,對應到具體應用上,便是bin目錄下的mysql.exe和mysqld.exe,mysql是客戶端,mysqld是伺服器端。 所以先要啟動my ...
MySql資料庫是比較常用的關係型資料庫,操作用的是sql語句,下麵來說一說MySql的一些基本操作
MySql資料庫是一種C/S型的模式,即客戶端/伺服器端,對應到具體應用上,便是bin目錄下的mysql.exe和mysqld.exe,mysql是客戶端,mysqld是伺服器端。
所以先要啟動mysqld.exe服務,然後用mysql.exe登陸。
1.mysql登陸
打開cmd命令視窗,輸入登陸命令:
mysql -h主機ip/功能變數名稱 -P埠 -u用戶名 -p密碼
在本地登陸的話,一般命令是:mysql [-hlocalhost -P3306] -u用戶名 -p密碼 [表示可以沒有]
一般-p後面不直接加密碼,而是直接-p就可以了,下一步就會提示輸入密碼,是以密文的方式。
2.資料庫
1.創建資料庫:create database 資料庫名字 [資料庫選項] []表示可選
例子:create database person charset=utf8; (要以分號結束) //創建一個person資料庫,使用字元集utf8
create database person //創建一個person資料庫,字元集是預設的
2.查看所有資料庫:show databases;
3.查看部分資料庫:show databases like '匹配模式' // ('_'表示任意單個字元,’%‘表示任意多個字元,其實就是占位符)
例子:show databases like 'f_le'; //可以匹配的資料庫可以是file fole fple fyle......
show databases lke '%s'; //匹配以s結尾的資料庫,可以是sys,files,words.....
4.刪除資料庫:drop 資料庫名字;
2.表操作
在進行表操作時,要先選擇要操作的資料庫,語法: use 要使用的資料庫名字;
1.創建表:create table 表名 (欄位名 欄位類型)
例子:create table student (id int,name varchar(4),age int);//創建一個student表
2.查看所有表:show tables; //查看所有表
show tables like 匹配模式 //查看部分表,與查看資料庫一樣
3.查看表結構:desc 表名;
4.表欄位操作:alter table 表名 add column 新欄位 欄位類型; //新增一個欄位
alter table 表名 change 舊欄位名 新欄位名 舊欄位屬性; //改變欄位名字
alter table 表名 modify 欄位名 新類型; //修改欄位的類型
alter table 表名 drop 欄位名; //刪除欄位
5.表重命名:rename table 舊表名 to 新表名;
6.刪除表: drop table 表1,表2,....;
3.表內容操作
1.查看表內容:select * from 表名;// “*” 是通配符,表示所有。查看表所有的內容
select (欄位名1,欄位名2...) from 表名; //查看對應欄位的內容
select (欄位列表) from 表名 where 條件; //條件查詢,內容比較多,以後再說.
例子:select * from student where age=18; /查詢所有年齡為18的學生的數據
2.插入:insert into 表名 [欄位列表](沒寫的話,預設在全部欄位插入數據) values (),(),(),().....;
例子:insert into student (name,age) values ('張三',18),('李四',20);
3.刪除:delete from 表名 where 條件; //如果沒寫條件的話會把所有數據都刪除了(慎用)
例子:delete from student where age=18; //刪除所有年齡為18的學生的數據
4.更新(修改):update 表名 set 欄位名 = 新的值 where 條件; //不寫條件預設全部修改
4.欄位類型
1.整型
tinyint //1個位元組大小
smallint //2個位元組大小
mediumint //3個位元組大小
int //四個位元組大小
bigint //8個位元組大小
2.浮點型
float // 4位元組 精確度7位,超過會四捨五入
double //8位元組大小 精確度15位,超過會四捨五入
decimal //定點型小數,精確度高
3.字元串類型
char(L) //定長字元 L表示存放的字元個數 (0-255) //定長的意思是無論裝入多少個字元,空間都按定義時分配
varchar(L) //變長字元 0-65535 會根據實際存放的字元進行分配空間
text(n) //文本類型,n表示位元組數,一般存放字元數超過255都應該用問文本類型
bolb //存放二進位文件的
4.日期時間類型
date //日期, 3位元組大小,格式為 yyyy-mm-dd 從 1000-01-01 到 9999-12-12
time // 時間,3位元組大小,格式 hh:ii:ss 從 -839:59:59 到 838:59:59
datetime //日期時間,8位元組大小 格式 yyyy-mm-dd hh:ii:ss
timestamp //時間戳,會自動更新 格式 yyyy-mm-dd hh:ii:ss
year //年 1900-2155 有兩種插入方式 自行百度。
5.enum(枚舉)
enum('男’,‘女') //只能取其中之一的值,和C語言的枚舉差不多,都是用一個整型數據代表
//比如 ’男' 是1,‘女'是2 在插入數據時可以用1代表男,2代表女
-------------
其實sql語句還有很多用法,需要自己多練,多查,這裡只是列舉一些常用的基礎用法。
MySql還用很多其它高級用法,以及一些基礎知識,下一篇再說。