charsetGBK;命令將客戶端字符集設(shè)置為GBK,這樣能保證正確插入和讀取中文(數(shù)據(jù)庫端字符集可以是gb2312,GBK,utf8等支持中文的字符集) 如果是利用M" />

欧洲免费无码视频在线,亚洲日韩av中文字幕高清一区二区,亚洲人成人77777网站,韩国特黄毛片一级毛片免费,精品国产欧美,成人午夜精选视频在线观看免费,五月情天丁香宗合成人网

薈聚奇文、博采眾長(zhǎng)、見賢思齊
當(dāng)前位置:公文素材庫 > 計(jì)劃總結(jié) > 工作總結(jié) > 關(guān)于MySQL語句建表的總結(jié)

關(guān)于MySQL語句建表的總結(jié)

網(wǎng)站:公文素材庫 | 時(shí)間:2019-05-29 23:10:42 | 移動(dòng)端:關(guān)于MySQL語句建表的總結(jié)

關(guān)于MySQL語句建表的總結(jié)

在寫代碼之前,需要注意的一個(gè)問題是,使用命令行模式寫MySQL語句,如果涉及到中文,最好利用mysql>charsetGBK;命令將客戶端字符集設(shè)置為GBK,這樣能保證正確插入和讀取中文(數(shù)據(jù)庫端字符集可以是gb2312,GBK,utf8等支持中文的字符集).

如果是利用Mysql提供的MySQLQueryBrowser工具來寫腳本,建議先在ultraedit等文本工具(最好別用記事本,因?yàn)榭赡苡凶址幋a問題,推薦ultraedit)將代碼寫好,然后再粘貼到QueryBrowser的ScriptTab中一并執(zhí)行,因?yàn)镼ueryBrowser對(duì)中文的支持有bug,無法正確的輸入中文,因此要先在別處寫好。

寫了幾個(gè)表,里面包括外鍵主鍵的設(shè)置,建表語句如下:USEtestdatabase;

CREATETABLEclass(

class_idINTEGERUNSIGNEDAUTO_INCREMENTPRIMARYKEY,class_nameVARCHAR(40));

CREATETABLEstudent(

student_idINTEGERUNSIGNEDNOTNULLAUTO_INCREMENT,PRIMARYKEY(student_id),

student_namevarchar(40),

class_idINTEGERUNSIGNED,

CONSTRAINTFK_student_classFOREIGNKEY(class_id)REFERENCESclass(class_id)ONDELETECASCADEONUPDATECASCADE);

CREATETABLElession(

lession_idINTEGERUNSIGNEDNOTNULLAUTO_INCREMENT,PRIMARYKEY(lession_id),lession_namevarchar(40));

CREATETABLEcore(

core_idINTEGERUNSIGNEDAUTO_INCREMENT,lession_idINTEGERUNSIGNEDNOTNULL,student_idINTEGERUNSIGNEDNOTNULL,coreFLOAT,

close_statusINTEGERDEFAULT0,CONSTRAINTPK_corePRIMARYKEY(core_id),CONSTRAINTFK_core_lessionFOREIGNFOREIGN

KEY(lession_id)KEY(student_id)

REFERENCESREFERENCES

lession(lession_id),

CONSTRAINTFK_core_studentstudent(student_id)

ONDELETECASCADE);

CREATETABLEteacher(

teacher_idINTEGERUNSIGNEDNOTNULLAUTO_INCREMENT,PRIMARYKEY(teacher_id),teacher_namevarchar(40));

CREATETABLEteachlession(

teachlession_idINTEGERPRIMARYKEYAUTO_INCREMENT,lession_idINTEGERUNSIGNED,teacher_idINTEGERUNSIGNED,

CONSTRAINTFK_teachlession_lessionFOREIGNKEY(lession_id)REFERENCESlession(lession_id)

ONDELETECASCADE,

CONSTRAINTFK_teachlession_teacherFOREIGNKEY(teacher_id)REFERENCESteacher(teacher_id)

ONDELETECASCADE);

CREATETABLEsySUSEr(

sySUSEr_idINTEGERUNSIGNEDNOTNULLPRIMARYKEYAUTO_INCREMENT,sySUSEr_nameVARCHAR(40),sySUSEr_passwordVARCHAR(40),sySUSEr_roleINTEGER,foreign_idINTEGER);

/*這是指定表和列的字符集方式創(chuàng)建表*/usetestdatabase;

droptableifexistschartable;createtablechartable(

namevarchar(30)charactersetutf8collateutf8_general_ci)charactersetlatin1collatelatin1_danish_ci;

insertintochartablevalues("我們的世界");

一點(diǎn)總結(jié):

1.建表語句的順序必須符合各個(gè)表之間的關(guān)系,比如主表應(yīng)該在與之有外鍵關(guān)系的表之前建立。

2.關(guān)于外鍵的聲明,兩個(gè)字段的類型必須相同。3.注意代碼的編碼格式和數(shù)據(jù)庫字符集項(xiàng)符合。

擴(kuò)展閱讀:關(guān)于MySQL語句建表的總結(jié)

在寫代碼之前,需要注意的一個(gè)問題是,使用命令行模式寫MySQL語句,如果涉及到中文,最好利用mysql>charsetGBK;命令將客戶端字符集設(shè)置為GBK,這樣能保證正確插入和讀取中文(數(shù)據(jù)庫端字符集可以是gb2312,GBK,utf8等支持中文的字符集).

如果是利用Mysql提供的MySQLQueryBrowser工具來寫腳本,建議先在ultraedit等文本工具(最好別用記事本,因?yàn)榭赡苡凶址幋a問題,推薦ultraedit)將代碼寫好,然后再粘貼到QueryBrowser的ScriptTab中一并執(zhí)行,因?yàn)镼ueryBrowser對(duì)中文的支持有bug,無法正確的輸入中文,因此要先在別處寫好。

寫了幾個(gè)表,里面包括外鍵主鍵的設(shè)置,建表語句如下:USEtest;

CREATETABLEclass(

class_idINTEGERUNSIGNEDAUTO_INCREMENTPRIMARYKEY,class_nameVARCHAR(40));

CREATETABLEstudent(

student_idINTEGERUNSIGNEDNOTNULLAUTO_INCREMENT,PRIMARYKEY(student_id),student_namevarchar(40),class_idINTEGERUNSIGNED,

CONSTRAINTFK_student_classFOREIGNKEY(class_id)REFERENCESclass(class_id)ONDELETECASCADEONUPDATECASCADE);

CREATETABLElession(

lession_idINTEGERUNSIGNEDNOTNULLAUTO_INCREMENT,PRIMARYKEY(lession_id),lession_namevarchar(40));

CREATETABLEcore(

core_idINTEGERUNSIGNEDAUTO_INCREMENT,lession_idINTEGERUNSIGNEDNOTNULL,student_idINTEGERUNSIGNEDNOTNULL,coreFLOAT,

close_statusINTEGERDEFAULT0,CONSTRAINTPK_corePRIMARYKEY(core_id),

CONSTRAINTFK_core_lessionFOREIGNKEY(lession_id)REFERENCESlession(lession_id),

CONSTRAINTFK_core_studentFOREIGNKEY(student_id)REFERENCESstudent(student_id)

ONDELETECASCADE);

CREATETABLEteacher(

teacher_idINTEGERUNSIGNEDNOTNULLAUTO_INCREMENT,PRIMARYKEY(teacher_id),teacher_namevarchar(40));

CREATETABLEteachlession(

teachlession_idINTEGERPRIMARYKEYAUTO_INCREMENT,lession_idINTEGERUNSIGNED,teacher_idINTEGERUNSIGNED,

CONSTRAINTFK_teachlession_lessionFOREIGNKEY(lession_id)REFERENCESlession(lession_id)

ONDELETECASCADE,

CONSTRAINTFK_teachlession_teacherFOREIGNKEY(teacher_id)REFERENCESteacher(teacher_id)

ONDELETECASCADE);

CREATETABLEsySUSEr(

sySUSEr_idINTEGERUNSIGNEDNOTNULLPRIMARYKEYAUTO_INCREMENT,sySUSEr_nameVARCHAR(40),sySUSEr_passwordVARCHAR(40),sySUSEr_roleINTEGER,foreign_idINTEGER);

/*這是指定表和列的字符集方式創(chuàng)建表*/usetestdatabase;

droptableifexistschartable;createtablechartable(

namevarchar(30)charactersetutf8collateutf8_general_ci)charactersetlatin1collatelatin1_danish_ci;

insertintochartablevalues("我們的世界");

一點(diǎn)總結(jié):

1.建表語句的順序必須符合各個(gè)表之間的關(guān)系,比如主表應(yīng)該在與之有外鍵關(guān)系的表之前建立。

2.關(guān)于外鍵的聲明,兩個(gè)字段的類型必須相同。3.注意代碼的編碼格式和數(shù)據(jù)庫字符集項(xiàng)符合。

友情提示:本文中關(guān)于《關(guān)于MySQL語句建表的總結(jié)》給出的范例僅供您參考拓展思維使用,關(guān)于MySQL語句建表的總結(jié):該篇文章建議您自主創(chuàng)作。

來源:網(wǎng)絡(luò)整理 免責(zé)聲明:本文僅限學(xué)習(xí)分享,如產(chǎn)生版權(quán)問題,請(qǐng)聯(lián)系我們及時(shí)刪除。


關(guān)于MySQL語句建表的總結(jié)》由互聯(lián)網(wǎng)用戶整理提供,轉(zhuǎn)載分享請(qǐng)保留原作者信息,謝謝!
鏈接地址:http://www.7334dd.com/gongwen/750796.html