<form id="hz9zz"></form>
  • <form id="hz9zz"></form>

      <nobr id="hz9zz"></nobr>

      <form id="hz9zz"></form>

    1. 明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

      php程序員對數據庫設置必須要知道的一些語法

      [摘要]如果你初識MySql的話,那么這些語法糖你有必要知道。Sql創建數據庫-- 如果存在數據庫order,則刪除。否則創建數據庫drop database if exists `order`;-- 創建數據庫create database `order`;2.Sql創建數據表CREATE TABLE ...
      如果你初識MySql的話,那么這些語法糖你有必要知道。

      1. Sql創建數據庫

      -- 如果存在數據庫order,則刪除。否則創建數據庫
      drop database if exists `order`;
      -- 創建數據庫
      create database `order`;

      2.Sql創建數據表

      CREATE TABLE `Users` (
        `ID` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '客戶id',
        `Member` varchar(20) DEFAULT NULL COMMENT '會員號',
        `Name` varchar(100) DEFAULT NULL COMMENT '姓名',
        `Phone` varchar(20) DEFAULT NULL COMMENT '手機號碼',
        `QQ` varchar(20) DEFAULT NULL COMMENT 'QQ',
        `PassWord` varchar(50) DEFAULT NULL COMMENT '密碼',
        `IsOpen` char(2) DEFAULT 'Y' COMMENT '是否禁用',
        `Createtime` datetime DEFAULT NULL COMMENT '創建時間',
        PRIMARY KEY (`ID`)
      ) ENGINE=InnoDB AUTO_INCREMENT=1000 DEFAULT CHARSET=utf8;
      我這里創建了一個Users表,如果你的MySql里面存在多個數據庫的話你可以使用 關鍵詞 Use 來告訴mysql你所創建的表屬于哪一個庫,我這里創建到了上面新建的Order庫里面,如果你有mysql或者SQLserver的基礎的話
      你會覺得這些都很簡單,確實如此,主鍵,默認值,是否為空,是否自增等等,你都了解,不過還是有兩個東西值的說一下,一個是沒個字段的備注,我個人開發過程中覺得這個非常重要,所以一個簡單的備注能讓你快速的回憶起
      這個字段的作用,COMMENT 就是專門做這個的。第二個是我創建表中的1000這個值,這個是該表的記錄會從1000開始,可以自己去定義。uft8設置編碼格式。
      我這里創建了一個Users表,如果你的MySql里面存在多個數據庫的話你可以使用 關鍵詞 Use 來告訴mysql你所創建的表屬于哪一個庫,我這里創建到了上面新建的Order庫里面,如果你有mysql或者SQLserver的基礎的話
      你會覺得這些都很簡單,確實如此,主鍵,默認值,是否為空,是否自增等等,你都了解,不過還是有兩個東西值的說一下,一個是沒個字段的備注,我個人開發過程中覺得這個非常重要,所以一個簡單的備注能讓你快速的回憶起
      這個字段的作用,COMMENT 就是專門做這個的。第二個是我創建表中的1000這個值,這個是該表的記錄會從1000開始,可以自己去定義。uft8設置編碼格式。

      3.創建存儲過程

      DELIMITER $$
      CREATE DEFINER=`root`@`%` PROCEDURE `RecordPage`(
          tblName varchar(2000),
          SelectFieldName varchar(4000),
          strWhere varchar(4000),
          OrderField varchar(2000),
          PageSize int,
          PageIndex int,
          out iRowCount int  ,            -- 總記錄數
          out pagecount int               -- 總分頁數
      )
      $$:begin
           declare v_sqlcounts varchar(4000);
           declare v_sqlselect varchar(4000);
           #拼接查詢總記錄的SQL語句
           set strWhere=concat(' where ', strWhere);
           set OrderField=concat(' order by ', OrderField);
      
          #拼接分頁查詢記錄的動態SQL語句
          set v_sqlselect = concat('select ',SelectFieldName,' from ',tblName,strWhere,if(OrderField is not null,OrderField,''),' limit ',(PageIndex-1)*PageSize,' , ',PageSize);
         #select v_sqlselect;leave $$;
         set @sqlselect = v_sqlselect;
      
         prepare stmtselect from @sqlselect;
              execute stmtselect;
         deallocate prepare stmtselect;
         
             -- set v_sqlcounts = concat('select count(*) into @recordcount from ',tblName,strWhere);
           set v_sqlcounts = concat('select SQL_CALC_FOUND_ROWS ',SelectFieldName,'  from ',tblName,strWhere);
          #select v_sqlcounts;leave $$;
          set @sqlcounts = v_sqlcounts;
          prepare stmt from @sqlcounts;
               execute stmt;
          deallocate prepare stmt;
          #獲取動態SQL語句返回值
          -- set iRowCount = @recordcount;
           set iRowCount = (select FOUND_ROWS());
         
      end $$$$
      DELIMITER ;
      
      創建存儲過程的格式,上面是我創建的一個通用分頁的存儲過程,親測,可用,只需要對應傳參數就行了

      4.關于批量

      -- 批量插入
      INSERT INTO `order`.`users`(`ID`,`Member`,`Name`,`Phone`,`QQ`,`PassWord`,`IsOpen`,`Createtime`)
      VALUES(),(),(),(),(),(),()......;
      
      --批量更新
      UPDATE `order`.`users`
      SET Name= case ID
          WHEN 1 THEN '111'
          WHEN 2 THEN '222'
          WHEN 3 THEN '333' 
          END
      WHERE `ID` in(1,2,3) ;
      
      更新多個字段的時候可以將SET與END之間的部分復制替換成要更新的字段信息

      以上就是php程序員對數據庫操作必須要知道的一些語法的詳細內容,更多請關注php中文網其它相關文章!


      學習教程快速掌握從入門到精通的SQL知識。




      日韩精品一区二区三区高清