首頁 > 資料庫 > mysql教程 > Mysql之庫表操作的實例程式碼

Mysql之庫表操作的實例程式碼

黄舟
發布: 2017-09-18 10:33:37
原創
1243 人瀏覽過

SQL
概念:結構化查詢語言(SQL = Structured Query Language),
也是一種程式語言(資料庫查詢和程式設計語言),可以用於資料的存取及查詢,更新,管理關係型資料庫系統
ps: 不同資料庫系統之間的SQL不能完全相互通用;

分類
針對操作的物件不同,可以分成不同語言
1: 資料運算(資料管理)語言  DML(Data Management Language)
    1): 查詢資料           DQL
    2): 增加、   DDL(Data Definition Language)     --如表的定義
3: 資料控制語言               DCL(Data Control Language)

***************************** ************************************************** *********************************

資料庫, 表, 資料三者之間的關係
表是資料的載體, 資料庫又是表格的容器
******************************** ************************************************** ******************************


資料庫操作

mysql> show databases;    --查看所有的数据库
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
+--------------------+
登入後複製

建立資料庫

語法: create database [if not exists] db_name [資料選項]
例:

create database student_system;
登入後複製

範例:

create database if not exists student_system;
登入後複製

--會先判斷student_system是否已經存在,如果存在就不會創建,可以避免異常


例:

C:\WINDOWS\system32>mysqladmin -uroot -p create bbbb
登入後複製

--可以透過mysqladmin來進行建立

************* ************************************************** ******

資料庫的命名規則
1: 見名知意, 建議是使用底線的方式
2: 可以使用任意的字元,比如數字,符號,中文等
    create database 胖胖;
3: 如果命名很特殊,例如是以純數字或關鍵字來命名時,就要使用限定符來包裹(限定符指反引號``);
    create database `123456`;
4: 是否區分大小寫(這個目前的作業系統有關);
5: 資料庫的名字都可以使用反引號來建立
********* ************************************************** ************

ps: 資料庫建立時會形成目錄,目錄名稱是資料庫名稱,如果資料庫名稱是特殊字元,那麼檔案名稱會經編碼形式來表式
    目錄下方會有一個db.opt檔案保存著資料庫的選擇資訊;
*************************** ********************************************

#資料庫的相關操作

1: show databases;     --查看所有的数据库
2: drop [if exists] database bbbb; --删除指定的数据库
3: show create database student_system;  --查看数据库(student_system)创建信息
    +----------------+------------------------------------------------------------------------+
    | Database       | Create Database                           |
    +----------------+------------------------------------------------------------------------+
    | student_system | CREATE DATABASE `student_system` /*!40100 DEFAULT CHARACTER SET gbk */ |
    +----------------+------------------------------------------------------------------------+
4: alter database db_name [指定的操作]   --修改数据库信息
    例: alter database student_system character set 'utf8';
登入後複製

************************************ ************************************************** ******************************

表格的相關操作
表格的建立      
    建立語法: create table [if not exists] tbl_name(列結構)[選項]
    表是資料的載體, 資料庫又是表的容器,所以在創建表之前,需要先定它所屬的那個資料庫,
    表一定屬性某一個資料庫的

1: 可以在建立表的時候, 在表名之前指明所屬的資料庫

    create table `student_system`.student(
        name varchar(20),
        sex varchar(3),
        age int
    );
登入後複製

2: 可以先使用use db_name指明目前預設的資料庫,然後再建立表格

  

 use student_system
    create table teacher(
        name varchar(20),
        sex varchar(3),
        age int
    );
登入後複製

3: show tables;    --查看所有的表,也要先指明目前預設的資料庫

##4: show create table teacher;   --查看建立表(teacher) 建立資訊
   show create table teacher\G

5: describe teacher;   --檢視表(teacher)的結構
    

+-------+-------------+------+-----+---------+-------+
    | Field | Type        | Null | Key | Default | Extra |
    +-------+-------------+------+-----+---------+-------+
    | name  | varchar(20) | YES  |     | NULL    |       |
    | sex   | varchar(3)  | YES  |     | NULL    |       |
    | age   | int(11)     | YES  |     | NULL    |       |
    +-------+-------------+------+-----+---------+-------+
    desc teacher;  --可以简写describe teacher;
登入後複製
##6: dropop table [if exists] tbl_name;   --刪除表格(包裹表結構)
    例: drop table student;

    例: drop table if exists student;

****************** ************************************************** *************************************************

修改表格
修改表名

语法:rename table old_table_name to new_table_name 
例: rename table student to student_1;
例: rename table student_2 to student_1, teacher to teacher_1;   --可以同时修改多个表名
例: rename table student_1 to `test`.student_2; --可以跨数据库重命名, 可以通过这个表重命名的方式来对数据库重命名
登入後複製

修改列的定義
新加列(add)

alter table student_1 add id int;
登入後複製

刪除列(drop )

alter table student_1 drop id;
登入後複製

修改列定義(modify)

alter table student_1 modify name varchar(10);
登入後複製


重命名列(change)

alter table student_1 change age student_age int(3);
登入後複製


*******************************************************************************************************


表数据操作(增删改查)
插入数据(创建数据create)
语法: insert into 表名(字段列表) values(值列表)
例: insert into teacher_1(name,age) values('胖胖', 18);
例: insert into teacher_1 values('小胖','男', 16);   --如果没有指定字段列表,那么要插入的值要和列中的字段顺序一样
    insert into teacher_1(name,age) values('小未', 19);
    insert into teacher_1 values('阿哈','女',18);


查询数据(读取数据read)
语法: select 字段列表 from 表名 where 查询条件
例: select name,age from teacher_1;
例: select * from teacher_1;   --如果字段列表使用*号来代替, 那么表示查询所有的字段
例: select * from teacher_1 where name = '胖胖';    --可能使用查询条件进行数据过滤,拿到想要的数据;
例: select * from teacher_1 where 1;       --where 1表示条件永远成立
    select * from teacher_1 where 0;


修改数据(update)
语法: update 表名 set 字段=新值,... where 条件
例: update teacher_1 set sex='女' where name = '小胖';
    update teacher_1 set sex = '保密', age = 15, name = '阿呵' where name = '阿哈';


删除数据(delete)
语法: delete from 表名 where 条件
例: delete from teacher_1 where age = '18';
例: delete from teacher_1;   --如果没有条件进行删除,则会删除整个表的删除(不同于drop table teacher_1)
ps: 在删除数据时,一定要给一个具有严格逻辑判断条件,不然很容易造成数据误删除,最后造成数据的损失



curd(create update read delete)--增删改查

以上是Mysql之庫表操作的實例程式碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板