小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

MySql之5.0使用心得 - hengheng123456789 - BlogJava

 nbtymm 2007-01-11
前兩天很是使用了一把MySql,版本是5.0.27,對(duì)字符集的設(shè)置、存儲(chǔ)過程的建立、觸發(fā)器的建立頗有心得,現(xiàn)與大家分享實(shí)例。

1、字符集的設(shè)置

   a、首先安裝MySql5.0.27,注意!是setup安裝,不是免安裝版。(如何設(shè)置免安裝版的字符集俺還不會(huì))

   b、運(yùn)行MySql Server Instance Configuration Wizard,在please select the default character set頁面選擇Menual Selected Default Character Set / Collation,并在Character Set:下拉框中選擇gb2312(經(jīng)測(cè)試,從MS SQL Server中導(dǎo)入中文字符是成功的。)

   c、然后啟動(dòng)MySql服務(wù)即可!

2、存儲(chǔ)過程的建立

   a、為了方便執(zhí)行sql語句,我建議安裝MySQL GUI Tools 5.0的可視化工具,十分方便!

   b、打開MySQL GUI Tools 5.0的MySql Query Browser工具,連接localhost,用戶名為root,密碼為空。

   c、選擇File-〉New Script Tab

   d、在Script 1的Tab頁中輸入以下語句,選擇Execute按鈕執(zhí)行即可。

-- 建立數(shù)據(jù)庫 sample ,并使用它
create database sample;
use sample;

-- 建立一個(gè)表

create table Msg (
  MsgServiceId     integer,
  MsgTypeId        integer,
  MsgQueuedAt    datetime,
  MsgParam1        varchar(60)  NULL,
  MsgId     int NOT NULL auto_increment,         -- 自增
  PRIMARY KEY  (`MsgId`)                              -- 主鍵
)DEFAULT CHARSET=gb2312;                        -- 設(shè)置表的字符集

-- 建立索引

create unique index BCG_Msg_idx2 on Msg ( MsgTypeId,  MsgId );

-- 建立存儲(chǔ)過程

DELIMITER |  --必須有此句

CREATE PROCEDURE BCG_QueueMsg
   (
     in v_MsgServiceName varchar(30),
     in v_MsgParam1      varchar(60)
   )
BEGIN
      DECLARE v_MsgTypeId integer;
      DECLARE v_QueuedAt  timestamp;
      set v_QueuedAt = now();
      SELECT MsgServiceId INTO v_MsgServiceId FROM BCG_MsgService where MsgServiceName=v_MsgServiceName;
      INSERT INTO Msg (
        MsgTypeId,
        MsgQueuedAt, 
        MsgParam1
      )
      VALUES (
        v_MsgTypeId,
        v_QueuedAt, 
        v_MsgParam1
      );
END;
|
DELIMITER ;


3、觸發(fā)器的建立

   a、選擇File-〉New Script Tab

   b、在Script 2的Tab頁中輸入以下語句,選擇Execute按鈕執(zhí)行即可。

-- 使用sample數(shù)據(jù)庫
use sample;

-- 建立測(cè)試表

CREATE TABLE Orders (
 OrderID int NOT NULL auto_increment ,
 CustomerID nchar (5)  NULL ,
 EmployeeID int NULL ,
 OrderDate datetime NULL ,
 RequiredDate datetime NULL ,
 ShippedDate datetime NULL ,
 ShipVia int NULL ,
 Freight float NULL ,
 ShipName nvarchar (40) NULL ,
 ShipAddress nvarchar (60)  NULL ,
 ShipCity nvarchar (15)  NULL ,
 ShipRegion nvarchar (15)  NULL ,
 ShipPostalCode nvarchar (10)   NULL ,
 ShipCountry nvarchar (15)   NULL,
  PRIMARY KEY  (`OrderID`)
)DEFAULT CHARSET = gb2312;

-- 建立觸發(fā)器 TESTDBINSERT  ,當(dāng)有記錄插入表時(shí),同時(shí)插入Msg表一條記錄

DELIMITER |
CREATE TRIGGER TESTDBINSERT  AFTER  INSERT ON ORDERS
FOR EACH ROW
BEGIN
    -- 把新插入orders表中新記錄的OrderID字段的值賦給ID,NEW表示當(dāng)前插入的記錄項(xiàng)內(nèi)容
    SET @ID = NEW.OrderID; 

    -- 獲得當(dāng)前時(shí)間
    SET @v_QueuedAt = NOW();

    -- 把以上得到的值插入Msg表中
    INSERT INTO Msg (
        MsgTypeId,
        MsgQueuedAt, 
        MsgParam1
    ) VALUES (
        1,
        @v_QueuedAt, 
        @ID
    );
END;
|
DELIMITER ;

   c、這時(shí)在表orders中插入一條記錄,則Msg表中也增加一條記錄。

最后說明MySQL GUI Tools 5.0是一個(gè)十分好用的工具,還有可以從其他數(shù)據(jù)庫中導(dǎo)入數(shù)據(jù)的GUI工具,希望大家多多研究

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多