1. 程式人生 > >mysql:day1--sql基礎(基本語法及常識)

mysql:day1--sql基礎(基本語法及常識)

SQL基礎:

1、SQL語言都基於SQL92標準,但各資料庫之間又存在差異。目前最新的標準為SQL99,它同樣相容SQL92。
2、SQL-Structured Query Language結構化查詢語言。
2.1、DDL – 資料定義語言Data Definition Language
建庫、建表、設定約束等:
create\drop\alter
2.2、DCL – 資料控制語言 Data Controll Language
資料授權,收回授權
grant\revoke
2.3、DML-資料操縱語言Data Manipulation Language。
主要指資料的增刪查改
Select\delete\update\insert\call

基本操作:

mysql –uroot –p1234 //登入
mysql>show databases; //顯示所有已經存在的資料庫
mysql>use test; //使用某個資料庫
mysql>show tables; //顯示當前資料庫中的所有表
mysql>help; //顯示
mysql>desc tableName; //顯示錶結構
匯出資料庫中的所有表:在命令列模式下:
shell/> mysqldump –uroot –p1234 –d dbName > d:\a\a.sql
匯入:匯入時,必須要先手工建立一個新的資料庫:
mysql>use dbName;
Mysql>source d:\a\a.sql
或:
shell/>mysql –uroot –p1234 –D dbname < d:\a\a.sql (注意引數-D是大寫)

簡單的資料操作:

1、建立資料庫。DDL –資料定義語言
ceate database abc;
2、建立一個表。DDL
create table stud(…..);
3、向其中寫入一行資料。DML
insert into
4、查詢此行資料。DML
select
5、刪除此行資料。DML
delete
6、刪除此表。DDL
7、刪除資料庫 DDL

建資料庫的語法\建資料表的語法:

建庫:

Create database 資料庫的名;

處理中文亂碼問題:

Create database 資料庫名 character set UTF8;//指定字元編碼

建表:

Create table 表名(
欄位名 資料型別(長度),…
)

其他更多引數可參見Mysql的開發手冊。

MySql的資料型別:

查詢Mysql的開發手冊,查詢data type可見所有的資料型別。

比較經常使用的資料型別為:

int、varchar、char、numeric(double,float)、text

Char與varchar的區別:

Char是定長資料,如果char(10)但裡面只儲存了1個字元,則它的長度仍然是10.-但Mysql對查詢的結果進行了處理 ,所以使用legth無法判斷它所佔用的長度。
Varchar(10)時,如果裡面只儲存了1個字元,則它的長度為1,所以,varchar被稱了可變長字元。
Char的取值範圍為0-255
varchar的取值範圍為0-65535.如果是UTF-8資料型別則可以儲存0-21844字元。

Int和numeric:

Int型別不能儲存小數位。
Numeric可以儲存小數位。如numeric(4,2)則可以表示最大資料為:99.99。注意4是總位數,2是小數位數。

建立和修改表:

建立表:

Create table stud(
id int,
name varhcar(30)
);
建立時同時指定不能為空:
Create table tb(
     name varchar(20) not null
)

修改表:

Alter table stud
      add sex char(1);  /*新增一個新的欄位 */

Alter table stud
      drop column sex;  /* 刪除sex欄位*/

資料CURD:

字元型別的資料前後要新增’’單引號。

插入資料

沒有指定列時,要給出完整資料,且要對應順序:
Insert into stud values(1,’Tom’,’1’);
優化寫入,指定列:
Insert into stud(id,name) values(1,’jack’);

查詢資料:

Select * from stud; – 通過*將所有列顯示出來
查詢指定的列:
Select id ,name from stud
另名:as
Select id as 編號,name as 姓名 from stud; //不建議使用中文
或是省去as關鍵字:
Select id 編號,name 姓名 from stud;
給表也取個別名:
Select s.id,s.name from stud as s;

修改資料:

Update stud set name=‘Jack’;
同時修改兩個值:
Update stud set name=‘Rose’,id=22 where id=1;
在原值上面進行累加操作:
Update product set price=price*1.1 -所有商品的價格上漲10%

刪除資料:

Delete from stud /全部刪除/
Delete from stud where id=1; /刪除指定的行 /
也可以使用
TRUNCATE TABLE stud; //它與delete的區別是不記錄操作日誌,即無法恢復資料。

匯入指令碼

source D:/JavaTraining2015_2/sstud.sql

匯出指令碼

mysqldump -uroot -p --databases aa > d:a/dd.sql

mysql第一天程式碼記錄:

4、  命令列安裝mysql
4.1、註冊服務(注意以管理員身份操作:在我的電腦中開啟“C:\Windows\System32”,找到檔案“cmd.exe”,右鍵點選,選擇“以管理員身份執行(A),進到目錄“D:\mysql-5.5.24-winx64”,然後執行以下程式碼)
    bin\mysqld --install mysql-5.6.22-winx64 --defaults-file=d:\mysql-5.6.22-winx64\my.ini

4.2、 啟動服務(以管理員身份執行)
    net start mysql-5.6.22-winx64 
     --也可右鍵點選“我的電腦”|“管理”|“服務和應用程式”|“服務”|找到“mysql-5.5.24-winx64”,右鍵點開,選擇啟動


4.3、命令列登入(把bin目錄設到path環境變數中,則可省略“bin\”,後面同理)
   bin\mysql -u root -p
   --密碼為空回車

   為root設密碼(原密碼為空時):mysqladmin -u root password "1234"
   修改root密碼:mysqladmin -u root password oldpass "newpass"

4.4、停止服務(以管理員身份執行)
   net stop mysql-5.6.22-winx64


4.5 刪除服務(以管理員身份執行)
    bin\mysqld --remove mysql-5.6.22-winx64


5、命令演示

※※瞭解※※ DCL– 資料控制語言    ----DBA
create user hncu identified by '1234';  //建立一個使用者
grant all on *.* to 'hncu'@'%' with grant option; //把所有資源授權給使用者hncu,並允許他在任何機器上登入使用
grant all on *.* to 'hncu'@'192.168.31.168' with grant option; //限制該使用者只能在這臺機器上登入



※※※  DML-資料操縱語言Data Manipulation Language。
主要指資料的增刪查改
Select\delete\update\insert\call

show databases;  //顯示所有資料名
use mydb;  //開啟“mydb”這個資料庫
show tables; //顯示當前資料庫的所有表名
select * from student;   //顯示student表中的所有記錄
select * from student where saddress='湖南長沙'; //顯示(查詢)saddress='湖南長沙'的所有記錄

select sno,sname,saddress from student;   //顯示student表中的指定欄位

insert into student values(8000,'Jack','1995-1-1','中國北京'); //向student表插入一條記錄

delete from student where sname='heihei'; //刪除指定行
update student set sname='Rose' where sno='1009';

insert into student (sno,sname) values ('8001','aaaa');//只插入指定的列

※※※DDL – 資料定義語言Data Definition Language
建庫、建表、設定約束等:
create\drop\alter
資料型別的知識點: charvarchar都可以用來定義字元型別的欄位,區別:
char(15) ---固定長度15,如果賦值時只賦一個字元'a',那麼裡面資料是:1個字元'a'14個空格。-----類似Java當中的字元陣列。
varchar(15)----可變長的char陣列,如果賦值時只賦一個字元'a',那麼裡面資料就只有一個字元'a'。---類似Java當中的String

create table sstud(
  sno varchar(15) not null primary key,
  sname varchar(15) not null,
  age int,
  saddress varchar(30)
);

desc sstud; //顯示錶結構
insert into sstud values('1001','Jack',25,'長沙');
insert into sstud values('1002','Jack2',26,'長沙');
insert into sstud values('1003','Jack3',27,'長沙');
insert into sstud values('1004','Jack4',28,'長沙');

alter table sstud add column aa int;//修改表結構--新增一列
alter table sstud drop column aa;//修改表結構--刪除一列
drop table sstud;
drop database aa;

匯入指令碼:
source D:/JavaTraining2015_2/sstud.sql

匯出指令碼
mysqldump -uroot -p --databases aa > d:a/dd.sql




相關推薦

mysql:day1--sql基礎基本語法常識

SQL基礎: 1、SQL語言都基於SQL92標準,但各資料庫之間又存在差異。目前最新的標準為SQL99,它同樣相容SQL92。 2、SQL-Structured Query Language結構化查詢語言。 2.1、DDL – 資料定義語言Data

Xml一基本語法和約束

字符 一行 語言 oca cas 書寫 xsd ati 寫法 XML:eXtensible Markup Language 可擴展標記語言 version="1.0"     * 可擴展:所有的標簽都是自定義的。     * 功能:數據存儲     * 配置文件  

2.6MysqlSQL基礎——存儲引擎的查看與修改

char arc lte %s table sel mysql ike like (2.6)Mysql之SQL基礎——存儲引擎的查看與修改 可以使用   show engines; 查看數據庫支持的所有的存儲引擎; 目錄:    1、數據庫級別存儲引擎   1.1查看現在

T-SQL 高階程式設計基本語法

T-SQL 高階程式設計 /*-變數應用-*/ --以標記為字首 --以標記為字首 --區域性變數宣告 declare @ --區域性變數賦值:使用語句或語句 --set 賦值語句一般賦給變數指定的資料常量 set @ = --sel

c/c++基礎篇--------------------------基本框架語法

基本框架及語法 目錄 1.基本框架 2.基本語法 1.基本框架 例: (hello world!)  #include <stdio.h> //前處理器指令 int main()

2.8MysqlSQL基礎——索引的分類與使用

中標 var chang mysq type add har 滿足 空間 (2.8)Mysql之SQL基礎——索引的分類與使用 按邏輯分類: 1、主鍵索引(聚集索引)(也是唯一索引,不允許有空值) 2、普通索引或單列索引 3、多列索引(復合索引) 4、唯一索引或非唯一索

2.8MysqlSQL基礎——索引的查詢與刪除

sele rom db_name name test unique 查詢 img alt (2.8)Mysql之SQL基礎——索引的查詢與刪除 1、索引查詢 (1)按庫查詢   select * from information_schema.statistics wher

2.16MysqlSQL基礎——函數

統計行數 最大 默認 插入 fun ike insert 一行 div (2.16)Mysql之SQL基礎——函數 關鍵詞:mysql函數,mysql自定義函數,mysql聚合函數,mysql字符串函數,mysql日期函數 1、自定義函數

js基本語法註意事項

name tab 設置 刪除元素 ext ack rop 捕獲 ons 正則表達式:var x=/^a{2,8}$/;alert(x.test("aaa"));正則表達式一般用於表單驗證。<form onsubmit="return checkForm()">

基本概念存儲結構

表示 com 鏈式 結構定義 comment pen next rac 存儲 樹的定義—-遞歸(兩者相聯系) 根節點:唯一 節點的度:節點擁有的子樹數。度為0—>稱為終端節點或葉節點 樹的度:樹內各節點的度的最大值 內部節點:除根節點外的節

oracle sql 基礎:數據定義語言創建和管理序列、索引、同義詞

aps span 最小值 into 全表掃描 條件 creat 返回 ext 許多應用程序要求使用唯一的數字作為主鍵的值,你即可以在應用程序中構建代碼來處理這種需求,也可以用一個序列來產生唯一的數字。如果你想要增進某些查詢的性能,你應該考慮創建一個索引,你也可

PL/SQL簡介與基本語法

rep round 子程序 package 符號 編程語言 類型 運算符 授權 PL/SQL的簡介: PLSQL 是Oracle公司在SQL基礎上進行擴展而成的一種過程語言。PLSQL提供了典型的高級語言特 性,包括封裝,例外處理機制,信息隱藏,面向對象等;並

SQL基礎SQL命令

版本 數據庫應用 ges odi 改變 sql per 測試 數據類型 1、CREATE INDEX 語句   CREATE INDEX 語句用於在表中創建索引。在不讀取整個表的情況下,索引使數據庫應用程序可以更快地查找數據。   索引:在表中創建索引,以便更加快速高效地查

SQL基礎SQL函數

註釋 返回 訪問量 ces intro div group by -1 rownum 一、SQL Aggregate 函數:   SQL Aggregate 函數計算從列中取得的值,返回一個單一的值。 1、AVG() 函數   AVG() 函數返回數值列的平均值。   語法

SQL記錄-PLSQL基本語法與數據類型

屬性 lean eric 數據庫 組成 -- 小數 cte welcome PL/SQL基本語法 PL/SQL是一種塊結構的語言,這意味著PL/SQL程序被劃分和編寫代碼的邏輯塊。每塊由三個子部分組成: S.N.段和說明 1 聲明 此部分開頭使用關鍵字DECLARE。

MySql數據庫的基本原理指令

es2017 price 命令 focus href targe chan 刪除數據庫 結構 1.什麽是數據庫 數據庫就是存儲數據的倉庫,其本質是一個文件系統,數據按照特定的格式將數據存儲起來,用戶可以通過SQL對數據庫中的數據進行增加,修改,刪除及查詢操作。 2、簡介 M

css基本語法頁面引用

式表 pre class 創建 pos width 樣式 tex type css基本語法 css的定義方法是: 選擇器 { 屬性:值; 屬性:值; 屬性:值;} 選擇器是將樣式和頁面元素關聯起來的名稱,屬性是希望設置的樣式屬性每個屬性有一個或多個值。代碼示例: d

python-函數基本語法特性

函數 ron 很多 class 特性 ret pan 英文 fun 函數是什麽? 函數一詞來源於數學,但編程中的「函數」概念,與數學中的函數是有很大不同的,具體區別,我們後面會講,編程中的函數在英文中也有很多不同的叫法。在BASIC中叫做subroutine(子過程或子程序

C語言基本語法原理初始:

reg 移碼 存儲 存儲類型 關鍵字 向上 取值 靜態 別名 C語言基本語法及原理初始: /* ******************************************* * 數據類型 說明數據大小

MySQL教程 SQL基礎查詢

內存 tab 聯合 檢索 並不是 分組 某個字段 運算 roo 其實在數據庫最經常用的當屬查詢操作 基本語法 SELECT [ALL | DISTINCT | DISTINCTROW ] 字段列表 AS 字段別名 [FROM 表名