# 初始化設定
# SQL語法
- **Microsoft Sql Server**
資料欄位不用前後單引號" ``
- **使用phpmyadmin Mysql資料庫**
進入MySQL資料庫,在網頁輸入`http://localhost/phpmyadmin`
初始登入帳戶:帳號`root` 密碼無
## 選擇資料庫
```sql!=
USE Database;
```
## 創建資料庫, 資料表
```sql!=
CREATE TABLE table_name (
number int(10),
text varchar(50)
);
```
## ALERT 指令
當需要修改到資料表的結構或是名稱十,需要用到ALERT指令。
`ALERT`指令還可以額外對資料庫進行修改[LINK]("https://www.w3big.com/zh-TW/mysql/mysql-alter.html")[LINK]("https://www.runoob.com/mysql/mysql-alter.html")
```sql!=
ALERT TEBLE table_name
```
## 基本語法 CRUD(增查改刪)
Creat, Read, Update, Delete
新增, 查詢, 修改, 刪除
舉例:這有資料表名為`dataDB`,裏頭還有幾筆資料
<table>
<tr>
<th>name</th>
<th>age</th>
<th>_money</th>
</tr>
<tr>
<td>Jhon</td>
<td>30</td>
<td>1000</td>
</tr>
<tr>
<td>Chang</td>
<td>25</td>
<td>500</td>
</tr>
</table>
**注意-** 資料庫的欄位當中請別命名money,在php指令好像無法執行有關money的命名
指令格式:
```
指令動作 `資料庫`
```
### INSERT
```sql!
INSERT INTO `dataDB` (`name`, `age`, `money`) VALUES ('Lee', '45', '1500');
-- 插入 資料表`dataDB` 名子、年齡及金額,值寫後面Values裡面
```
<table>
<tr>
<td>name</td>
<td>age</td>
<td>_money</td>
</tr>
<tr>
<td>Lee</td>
<td>45</td>
<td>1500</td>
</tr>
</table>
### SELECT
語法查詢單一欄位資料 select 欄位名 from 資料表名稱
`WHERE`為指定式/條件
```sql!
SELECT * FROM = `dataDB`; -- 結果顯示資料表的全部資料
SELECT * FROM `dataDB` where `age` = 30; -- 結果顯示資料為'age'年齡30的資料列
```
#### 舉例2
條件性選擇資料:
```sql!
-- 選取 `錢` 來自 `資料庫` 在哪裡/指定 `名子` = 'Jhon'
SELECT `_money` FROM `dataDB` WHERE `name` = 'Jhon' AND `age` = '30'
```
結果:
<table>
<tr><td>_money</td></tr>
<tr><td>1000</td></tr>
</table>
### UPDATE
UPDATE可理解為修改/更新資料
```sql!
-- 更新 `資料庫` 設置 `錢` = 1000 在哪裡/指定 `名子` = '張'
UPDATE `dataDB` SET `_money` = 1000 WHERE `name` = 'Chang'
```
透過`WHERE`可以有過濾性 或 特定選擇性 的資料比去修改該選擇資料中的金錢
修改資料比中,名子'張'的金錢數為1000
### DELETE
```sql!
DELETE FROM `dataDB` WHERE `name` = 'Lee';
```
:::spoiler SQL Server
## 資料型態
char varchar nchar nvarchar
有var定長
沒有var變長
n:unicode編碼 有n用2Byte儲存 沒有n英文用1Byte儲存
:::