Time of Update: 2017-02-27
這兩天受朋友的託付,要我幫他寫一個使用MySQL資料庫的使用者認證系統。我當然不好推脫的,只得耗費了一晚上的休息時間,寫了個很簡單的PHP程式。使用者認證的原理很簡單:首先需要使用者在頁面上填入使用者名稱和密碼,當然沒註冊的使用者需要先註冊。然後調用資料庫搜尋是否有相應的使用者。如果有就確認,沒有則提醒使用者先註冊。使用PHP來完成這一切很簡單,但需要注意的是如果想在以後的頁面中都能確認使用者身份,使用PHP3我只能想出使用cookie的方法。要想使用session,就只能等待PHP4正式版的發
Time of Update: 2017-02-27
二、 資料校正想象一下這樣的情形:我們把資料庫都設計妥當了,現在請使用者輸入資訊來寫到資料庫中去。假設您有一個欄位是要求數字類型的資訊,比如價格;而某個可愛的使用者,卻在這一欄裡輸入了文字資訊,使得您的應用程式的執行過程出現了故障。對您在SQL語句中提供的文字類型的資料,MySQL資料庫拒不接受,並向您提出了“嚴正抗議”。怎麼辦呢?您要用資料校正來防止以上狀況發生。簡單地講,資料校正是指我們對資料(通常是使用者經由HTML表格傳過來的)進行檢查,看看它是否遵從一定的規則。
Time of Update: 2017-02-27
近日在為學校製做校友錄時,需要身分識別驗證,在對比之後決定採用PHP+MYSQL進行身分識別驗證。 之前也曾考慮過用cookies或session。但是用cookies,在使用者離線再上線後,只要cookies不到期,不用登入仍然可以保持線上,這對於網吧來說是個隱患。而且使用者可以關閉cookies,這樣身分識別驗證就不成功。也考慮過用session,session在瀏覽過程中不斷的將訪問資訊加入到session中,如果使用者在網站內時間很長,瀏覽的頁面很多,就用導致session越來
Time of Update: 2017-02-27
本文介紹堪稱Web資料庫黃金組合的PHP/MySQL如何構築一個網路資料庫應用的方法,PHP是一個類似微軟ASP的伺服器端的嵌入式超文本處理語言,是建立動態網站的強大工具。而MySQL是一個輕型SQL資料庫伺服器,可運行在多種平台上,包括Windows
Time of Update: 2017-02-27
下面是一個簡單的php串連mysql資料庫進行資料分頁顯示的模版.可以按注釋說明資訊進行修改,裡面的sql語句是可以自己改的.注意分析和觀察裡面相關分頁部分的代碼的書寫和實現的方式.<?php$link = mysql_connect('localhost', 'root', '') or die('mysql database connect error');mysql_select_db('your database') or die('the selected database
Time of Update: 2017-02-27
1、啟動MySQL伺服器實際上上篇已講到如何啟動MySQL。兩種方法:一是用winmysqladmin,如果機器啟動時已自動運行,則可直接進入下一步操作。二是在DOS方式下運行d:mysqlbinmysqld2、進入mysql互動操作介面在DOS方式下,運行: d:mysqlbinmysql出現: mysql 的提示符,此時已進入mysql的互動操作方式。如果出現 "ERROR 2003: Can′t connect to MySQL server on
Time of Update: 2017-02-27
進階材料Insert 和 Update假設現在你要把下面的資料插入到資料庫中.ID = 3TheDate=mktime(0,0,0,8,31,2001) /* 31st August 2001 */Note= sugar why don't we call it off當你使用另外一個資料庫的時候,你的插入操作可能不會成功。第一個問題是每個資料庫都有不同的預設日期格式。MySQL預設格式是YYYY-MM-DD
Time of Update: 2017-02-27
從本節開始正式介紹各種SQL語句。本節介紹有關資料庫級的SQL以及相關操作,查看、建立和刪除等 操作。用SHOW顯示已有的資料庫句法:SHOW DATABASES [LIKE wild]如果使用LIKE wild部分,wild字串可以是一個使用SQL的“%”和“_”通配 符的字串。功能:SHOW DATABASES列出在MySQL伺服器主機上的資料庫。你可以嘗試下面舉例,觀察輸出結果,例如:mysql>show databases;+----
Time of Update: 2017-02-27
假設mysql安裝在c:盤,mysql資料庫的使用者名稱是root,密碼是123456,資料庫名是database_name,在d:盤根目錄下面存放備份資料庫,備份資料庫名字為backup20070713.sql(20070713.sql為備份日期)備份資料庫:mysqldump -uroot -p123456 database_name>d:/backup20070713.sql恢複資料庫:刪除原有資料庫,建立資料庫,把備份資料庫匯入。mysqladmin -uroot -p123456
Time of Update: 2017-02-27
MySQL目前不支援列的Default為函數的形式,如達到你某列的預設值為當前更新日期與時間的功能,你可以使用TIMESTAMP列類型下面就詳細說明TIMESTAMP列類型TIMESTAMP列類型TIMESTAMP值可以從1970的某時的開始一直到2037年,精度為一秒,其值作為數字顯示。TIMESTAMP值顯示尺寸的格式如下表所示::+---------------+----------------+| 列類型 | 顯示格式 || TIMESTAMP(14) |
Time of Update: 2017-02-27
啟動Mysql時加參數--log-slow-queries來記錄執行時間超過long_query_time秒的sql:/usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql--user=mysql --pid-file=/var/run/mysqld/mysqld.pid--skip-locking --port=3306 --socket=/var/run/mysqld/mysqld.sock
Time of Update: 2017-02-27
常見問題集錦MySQL總是崩潰首先你應該試著找出問題mysqld守護進程是否死掉或你的問題是否與你的客戶有關。你可以用mysqladmin version檢查你的mysqld伺服器正常執行了多長時間,如果mysqld死了,你可以在檔案“mysql-data-directory/'hostname'.err”中找到其原因。使用MySQL時的一些常見錯誤MySQL server has gone
Time of Update: 2017-02-27
這是一款正在開發中的Linux檔案系統,能把Linux上的 MySQL 資料庫作為檔案系統來處理。開發小組希望能得到 更多的建議,下面的文章翻譯自:實際上,這不是通常意義上的檔案系統,它沒有磁碟空間, 而是使用MySQL 精靈來儲存資料。可以把SQL 表和 一些函數通過檔案系統來實現。一、怎樣實現?讓我們來看使用執行個體:[root@localhost /root]# mount -t corbafs -o `cat /tmp/mysqlcorbafs.ior` none/mnt/mysql/[
Time of Update: 2017-02-27
確保你串連上了伺服器,如在先前的章節討論的。這樣做本身將不選擇任何資料庫來工作,但是那很好。從這點講,知道關於如何出詢問的一點知識,比馬上跳至建立表、給他們裝載資料並且從他們檢索資料要來的重要寫。本節描述輸入命令的基本原則,使用幾個查詢,你能嘗試讓自己mysql是如何工作的。這是一個簡單的命令,要求伺服器告訴你它的版本號碼和當前日期。在mysql>提示打入如下命令並按斷行符號鍵:mysql> SELECT VERSION(), CURRENT_DATE;+--------------
Time of Update: 2017-02-27
如果你忘記一個資料庫或表的名字,或一個給定的表的結構是什麼(例如,它的列叫什麼),怎麼辦? MySQL通過提供資料庫及其支援的表的資訊的幾個語句解決這個問題。你已經見到了SHOW DATABASES,它列出由伺服器管理的資料庫。為了找出當前選擇了哪個資料庫,使用DATABASE()函數:mysql> SELECT DATABASE();+------------+| DATABASE() |+------------+|
Time of Update: 2017-02-27
下面是一些學習如何用MySQL解決一些常見問題的例子。一些例子使用資料庫表“shop”,包含某個商人的每篇文章(物品號)的價格。假定每個商人的每篇文章有一個單獨的固定價格,那麼(物品,商人)是記錄的主鍵。你能這樣建立例子資料庫表:CREATE TABLE shop (article INT(4) UNSIGNED ZEROFILL DEFAULT '0000' NOT NULL,dealer CHAR(20) DEFAULT '' NOT
Time of Update: 2017-02-27
MySQL包含了一些可能在其他SQL資料庫找不到的擴充。要注意如果你使用他們,你的代碼將不與其他SQL伺服器相容。在一些情況下,你可以編寫包括MySQL擴充的代碼,但是仍然是可移植的,通過使用/*! ... */形式的注釋。在這種情況下,MySQL將進行詞法分析並且執行在注釋內的代碼,好像它是任何其它MySQL語句,但是其他SQL伺服器將忽略擴充。例如:SELECT /*! STRAIGHT_JOIN */ col_name FROM table1,table2 WHERE ...如果你在'!'
Time of Update: 2017-02-27
如果和MSSQL的TOP文法相比,那麼MySQL的LIMIT文法要顯得優雅了許多。使用它來分頁是再自然不過的事情了。最基本的分頁方式:SELECT ... FROM ... WHERE ... ORDER BY ... LIMIT ...在中小資料量的情況下,這樣的SQL足夠用了,唯一需要注意的問題就是確保使用了索引:舉例來說,如果實際SQL類似下面語句,那麼在category_id, id兩列上建立複合索引比較好:SELECT * FROM articles WHERE
Time of Update: 2017-02-27
你不可能隨時備份資料,但你的資料丟失時,或者資料庫目錄中的檔案損壞時, 你只能恢複已經備份的檔案,而在這之後的插入或更新的資料,就無能為力了。解決這個問題,就必須使用更新日誌。更新日誌可以即時記錄更新、插入和刪除記錄的SQL語句。啟用日誌當以--log-update=file_name選項啟動時,mysqld將所有更新資料的SQL命令寫入記錄檔案中。檔案被寫入資料目錄並且有一個名字file_name.#,這裡#是一個數字,它在每次執行mysqladmin refresh或mysqladmin
Time of Update: 2017-02-27
在一開始接觸PHP接觸MYSQL的時候就聽不少人說:“MySQL就跑跑一天幾十萬IP的小站還可以,要是幾百萬IP就不行了”,原話不記得了,大體就是這個意思。一直也沒有好的機會去驗證這個說法,一是從沒有接手過這麼大流量的網站,二是平時工作也比較忙,懶得去管這些,反正現在用不著,抱著這個想法把這個問題一直留到了最近,才把這個問題搞明白。就在前幾天公司旗下一網站(由於這是公司的商業內容我就不說是那個網站了)以下簡稱A站,這A站在年後流量猛增從一天的七八十萬猛跑到了好幾百萬的IP