日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql操作语句now_【MySQL数据库开发之二】MySQL 基础语句的书写与操作!

發(fā)布時間:2024/4/18 数据库 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql操作语句now_【MySQL数据库开发之二】MySQL 基础语句的书写与操作! 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

本篇Himi簡單介紹一些MySQL數(shù)據(jù)庫的基礎(chǔ)操作;

注:mysql 語句對大小寫不敏感,語句以分號“;”標識語句結(jié)束;

1. ? 首先使用兩個簡單的查詢語句;

查詢當前版本:select version();

查詢當前日期:select current_date;

查詢當前時間:select now();

兩句合并: select version() , current_date ,?now();

顯示結(jié)果如下:

mysql>?select?version()?,?current_date?,?now();

+-----------+--------------+---------------------+

|?version()?|?current_date?|?now()???????????????|

+-----------+--------------+---------------------+

|?5.5.23????|?2012-04-17???|?2012-04-17?14:34:53?|

+-----------+--------------+---------------------+

1?row?in?set?(0.00?sec)

2. ?SQL語句可分多行來寫:

mysql>?select?version(),

->?current_date,

->?now(),

->?user();

+-----------+--------------+---------------------+----------------+

|?version()?|?current_date?|?now()???????????????|?user()?????????|

+-----------+--------------+---------------------+----------------+

|?5.5.23????|?2012-04-17???|?2012-04-17?14:38:42?|?root@localhost?|

+-----------+--------------+---------------------+----------------+

1?row?in?set?(0.00?sec)

3. 使用查詢語句來作為計算器,讓mysql 為我們計算結(jié)果,如下:

mysql>?select?1*1,2*2,3*3;

+-----+-----+-----+

|?1*1?|?2*2?|?3*3?|

+-----+-----+-----+

|???1?|???4?|???9?|

+-----+-----+-----+

1?row?in?set?(0.00?sec)

4. 使用 \c 取消SQL語句的輸入;先看下MySQL的一些提示符:

提示符

含義

mysql>

準備好接受新命令。

->

等待多行命令的下一行。

‘>

等待下一行,等待以單引號(“’”)開始的字符串的結(jié)束。

“>

等待下一行,等待以雙引號(“””)開始的字符串的結(jié)束。

`>

等待下一行,等待以反斜點(‘`’)開始的識別符的結(jié)束。

/*>

等待下一行,等待以/*開始的注釋的結(jié)束。

輸入\c以后,它切換回到mysql>,提供反饋以表明mysql準備接受一個新命令。

4. 創(chuàng)建使用數(shù)據(jù)庫:

4.1 ? 查詢當前已存在的數(shù)據(jù)庫:

mysql>?show?databases;

+--------------------+

|?Database???????????|

+--------------------+

|?information_schema?|

|?mysql??????????????|

|?performance_schema?|

|?test???????????????|

+--------------------+

4?rows?in?set?(0.17?sec)

4.2 ?使用已有的數(shù)據(jù)庫;例如使用已存在的 test 數(shù)據(jù)庫;

mysql> use testDatabase changed

4.3 ? 假設(shè)你在test 該數(shù)據(jù)庫創(chuàng)建的任何東西可以被訪問它的其它人刪除,因此,你應(yīng)該詢問MySQL管理員許可你使用自己的一個數(shù)據(jù)庫。假定你想要調(diào)用你的menagerie,管理員需要執(zhí)行這樣一條命令:

mysql> GRANT ALL ON menagerie.* TO 'your_mysql_name'@'your_client_host';

這里your_mysql_name是分配給你的MySQL用戶名,your_client_host是所連接的服務(wù)器所在的主機。

4.4 ? ?創(chuàng)建并選擇新的數(shù)據(jù)庫;

mysql>?create?database?himiDB

->?;

Query?OK,?1?row?affected?(0.06?sec)

mysql>?use?himidb

Database?changed

mysql>

5. 創(chuàng)建使用表;

5.1 ? ? 新創(chuàng)建的數(shù)據(jù)庫中是沒有任何表的,如上面我新建的himiDB,如下我使用 show tables; 顯示:

mysql>?show?databases

->?;

+--------------------+

|?Database???????????|

+--------------------+

|?information_schema?|

|?himiDB?????????????|

|?mysql??????????????|

|?performance_schema?|

|?test???????????????|

+--------------------+

5?rows?in?set?(0.00?sec)

mysql>?use?himidb

Database?changed

mysql>?show?tables

->?;

Empty?set?(0.00?sec)

而關(guān)于表的創(chuàng)建比較麻煩,需要設(shè)計,較難的部分是決定你的數(shù)據(jù)庫結(jié)構(gòu)應(yīng)該是什么:你需要什么數(shù)據(jù)庫表,各數(shù)據(jù)庫表中有什么樣的列。你將需要一個包含你每個寵物的記錄的表。它可稱為pet表,并且它應(yīng)該包含,最少,每個動物的名字。因為名字本身不是很有趣,表應(yīng)該包含另外的信息。例如,如果在你豢養(yǎng)寵物的家庭有超過一個人,你可能想要列出每個動物的主人。你可能也想要記錄例如種類和性別的一些基本的描述信息。

年齡呢?那可能有趣,但是存儲到一個數(shù)據(jù)庫中不是一件好事情。年齡隨著時間流逝而變化,這意味著你將要不斷地更新你的記錄。相反, 存儲一個固定值例如生日比較好,那么,無論何時你需要年齡,可以以當前日期和出生日期之間的差來計算它。MySQL提供了日期運算函數(shù),因此這并不困難。存儲出生日期而非年齡還有其它優(yōu)點:· ? ? ? ? 你可以使用數(shù)據(jù)庫完成這樣的任務(wù),例如生成即將到來的寵物生日的提示。(如果你認為這類查詢有點蠢,注意,這與從商務(wù)數(shù)據(jù)庫來識別出不久要發(fā)給生日祝賀的客戶是同一個問題,因為計算機幫助私人聯(lián)絡(luò)。)· ? ? ? ? 你可以相對于日期而不止是當前日期來計算年齡。例如,如果你在數(shù)據(jù)庫存儲死亡日期,你能很容易地計算出一只寵物死時有多大。

這里假設(shè)我們創(chuàng)建一個people 的表,其中包含人的 ?名字、名族(h/m 來表示漢族/滿族)、城市,性別(m/w man/woman)、出生和死亡日期。

mysql>?create?table?people?(

->?name?varchar(20),

->?mz?varchar(1),

->?city?varchar(10),

->?sex?varchar(1),

->?birthday?varchar(20),

->?deathday?varchar(20));

Query?OK,?0?rows?affected?(0.37?sec)

創(chuàng)建表規(guī)則: ?create table xx(table Name) ( item的名字 ?item的類型 ?);

這里 varchar 字符,varchar()小括號內(nèi)的表示字符大小,根據(jù)情況自己定義,范圍是:1到65535的任何長度(如果選擇得不合適,后來證明你需要一個更長的字段,MySQL提供一個ALTER TABLE語句。)

OK,我們來查看這個新創(chuàng)建的表中的類目(具體每個記錄的查看使用 select *from 語句):

mysql>?show?tables;

+------------------+

|?Tables_in_himidb?|

+------------------+

|?people???????????|

+------------------+

1?row?in?set?(0.00?sec)

mysql>?describe?people;

+----------+-------------+------+-----+---------+-------+

|?Field????|?Type????????|?Null?|?Key?|?Default?|?Extra?|

+----------+-------------+------+-----+---------+-------+

|?name?????|?varchar(20)?|?YES??|?????|?NULL????|???????|

|?mz???????|?varchar(1)??|?YES??|?????|?NULL????|???????|

|?city?????|?varchar(10)?|?YES??|?????|?NULL????|???????|

|?sex??????|?varchar(1)??|?YES??|?????|?NULL????|???????|

|?birthday?|?varchar(20)?|?YES??|?????|?NULL????|???????|

|?deathday?|?varchar(20)?|?YES??|?????|?NULL????|???????|

+----------+-------------+------+-----+---------+-------+

6?rows?in?set?(0.14?sec)

5.2 ?往表中插入數(shù)據(jù):

5.2.1. 第一種使用讀取本地txt插入到表中,txt的每個value之間以tab空開,然后采用如下語句插入:

load data local infile ‘xxx路徑’ into table people;

如下:

mysql>?load?data?local?infile'/Users/Himi/Desktop/people.txt'into?table?people;

Query?OK,?1?row?affected?(0.08?sec)

Records:?1??Deleted:?0??Skipped:?0??Warnings:?0

mysql>?SELECT?*?FROM?people;

+------+------+---------+------+-----------+----------+

|?name?|?mz???|?city????|?sex??|?birthday??|?deathday?|

+------+------+---------+------+-----------+----------+

|?himi?|?h????|?beijing?|?m????|?1989-9-23?|?NULL?????|

+------+------+---------+------+-----------+----------+

1?row?in?set?(0.03?sec)

OK,沒有問題,txt每一行對應(yīng)表單的每一行,如果需要插入多行可以直接回車就OK啦。

注意:

mysql> LOAD DATA LOCAL INFILE ‘/path/people.txt’ INTO TABLE people;

請注意如果用Windows中的編輯器(使用\r\n做為行的結(jié)束符)創(chuàng)建文件,應(yīng)使用:

mysql> LOAD DATA LOCAL INFILE ‘/path/people.txt’ INTO TABLE people? ? -> LINES TERMINATED BY ‘\r\n’;

(在運行OS X的Apple機上,應(yīng)使用行結(jié)束符’\r’。)

如果你愿意,你也能明確地在LOAD DATA語句中指出列值的分隔符和行尾標記,但是默認標記是定位符和換行符。

5.2.2. ?使用INSERT語句手動直接插入

mysql>?insert?into?people

->?values('insertHimi','h','Anhui','m','1989-9-23',NULL);

Query?OK,?1?row?affected?(0.10?sec)

mysql>?select?*from?people;

+------------+------+---------+------+-----------+----------+

|?name???????|?mz???|?city????|?sex??|?birthday??|?deathday?|

+------------+------+---------+------+-----------+----------+

|?himi???????|?h????|?beijing?|?m????|?1989-9-23?|?NULL?????|

|?himi???????|?h????|?beijing?|?m????|?1989-9-23?|?NULL?????|

|?himi3??????|?h????|?beijing?|?m????|?1989-9-23?|?NULL?????|

|?insertHimi?|?h????|?Anhui???|?m????|?1989-9-23?|?NULL?????|

+------------+------+---------+------+-----------+----------+

4?rows?in?set?(0.01?sec)

與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖

總結(jié)

以上是生活随笔為你收集整理的mysql操作语句now_【MySQL数据库开发之二】MySQL 基础语句的书写与操作!的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。