freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

數(shù)據(jù)庫(kù)課程設(shè)計(jì)物聯(lián)網(wǎng)-在線瀏覽

2024-08-02 01:21本頁(yè)面
  

【正文】 string name, string pass)。 //獲取某個(gè)表名的 id bool have_op(int id, int op){ //判斷某個(gè)賬號(hào)是否有某個(gè)操作 return have_pow_in_op[id][op]。 //是否是 admin void create_new_user(string name, string pass); //創(chuàng)建新用戶(hù) void read_user()。 //賬 戶(hù)添加權(quán)限 bool revoke_pow(int where, int op)。 //把賬戶(hù)寫(xiě)入文件中 void show_user()。 其中大部分使用的是 map,vector string 實(shí)現(xiàn)的存儲(chǔ)數(shù)據(jù),這些 STL的容器方便快捷比較好用。 // 屬性名 string data_type。 // 是否為主鍵 bool _unique。 // 數(shù)據(jù)長(zhǎng)度 string NUMERIC。 } bool friend operator (property a, property b){ return 。 struct information{ string all[100]。 }。 // 創(chuàng)建的所有的表的名字 map string, int id。// 某個(gè)表所包含的屬性 vector information schedule[100]。 // 某個(gè)表的屬性 id int _vis[100][100]。 //顯示表信息 int get_id(string name)。 //獲取某一個(gè)表的屬性個(gè)數(shù) bool delete_pro(int where, int ver)。 //刪除某一行 bool update_file_info(string name, vector information info)。 //插入新的表名 bool insert_file_info(string name, vector information info)。 //插入新的表 bool insert_file_id(string name, map string, int id)。 //獲取某山東科技大學(xué)學(xué)生課程設(shè)計(jì) 個(gè)表的屬性名 map string, int get_pro_id(string name)。 //獲取所有的表名 vector information get_file_info(string name)。 //讀文件 bool write_to_file()。 其中 information 實(shí)現(xiàn)的是對(duì)某一條信息的存儲(chǔ), property 實(shí)現(xiàn)的是對(duì)某一種屬性的存儲(chǔ),而 file 則是對(duì)這兩種信息的整合。后面緊跟的一定是屬性名,保存下來(lái),再下一個(gè)單詞一定是數(shù)據(jù)類(lèi)型了,和所有能夠?qū)崿F(xiàn)的數(shù)據(jù)類(lèi)型進(jìn)行匹配,如果存在這個(gè)數(shù)據(jù)類(lèi)型繼續(xù)下一步,否則就提示錯(cuò)誤。 在創(chuàng)建完成之后一次輸出顯示出所有屬性的數(shù)據(jù)類(lèi)型,長(zhǎng)度 ,限制條件等一系列的數(shù)據(jù)。判斷的時(shí)候,第一個(gè)單詞一定是 “INSERT” 這個(gè)沒(méi)問(wèn)題,第三個(gè)一定是表名,去判斷一下這個(gè)表是否存在,然后找到 ”VALUES” ,對(duì)這后面的數(shù)據(jù)進(jìn)行存儲(chǔ)。 的實(shí)現(xiàn) Delete 的實(shí)現(xiàn)也比較簡(jiǎn)單,因?yàn)樗斜淼臄?shù)據(jù)全部才在程序內(nèi)存里,所以我在刪除的時(shí)候沒(méi)有 直接刪除內(nèi)存,而是標(biāo)記某一條信息是否存在,用 vis[]數(shù)組標(biāo)記, 等于 1 表示存在,這樣涉及到一個(gè)問(wèn)題,在創(chuàng)建表的時(shí)候要把所有 vis 都標(biāo)記成 1。 的實(shí)現(xiàn) Alter 是對(duì)某一列的刪除或者增加,也是使用的 delete 的思想, delete的思想是把某一行是否輸出標(biāo)記出來(lái),而刪除列可以同理直接標(biāo)記某一列是否存在即可。 select 就是在 ‘*’ 和 屬性名這一部分的判斷要區(qū)分開(kāi),別的地方就沒(méi)有難點(diǎn)了。 ( 1)印象最深刻的時(shí)候 就是文件操作上的問(wèn)題,在讀取到一個(gè)表的所有信息之后,再進(jìn)行其他操作的時(shí)候,只可以識(shí)別名字,而其他的操作都不能使用了,調(diào)了好長(zhǎng)時(shí)間,還以為 ifstream 這些數(shù)據(jù)流的問(wèn)題呢,后來(lái)在讀完之后是正確的,然后在另一個(gè)文件里面是錯(cuò)誤的,才找到真正錯(cuò)在哪。 ( 2)在刪除列的時(shí)候因?yàn)槭侵苯訕?biāo)記的,所以輸出列的條數(shù)的時(shí)候,會(huì)多,后來(lái)想了想是自己并沒(méi)有真實(shí)的刪除某條消息,所以在輸出個(gè)數(shù)的時(shí)候還是可以查到的。 ( 4)在程序執(zhí)行之后,得到了很多的 warning,然后去看了一下提示,要求是 容器的返回?cái)?shù)據(jù)個(gè)數(shù)數(shù)據(jù)類(lèi)型是 unsigned int,而我們兩個(gè)數(shù)在比較的時(shí)候是一個(gè) int,一個(gè) unsigned,所以不同數(shù)據(jù)類(lèi)型引起了 warning。 ( 2)注冊(cè)成功之后,因?yàn)檫@個(gè)是空賬號(hào), admin 沒(méi)有對(duì)他進(jìn)行權(quán)限賦予,測(cè)一下 create 是否可 以使用。上面的“ Change account;”是切換賬號(hào),我們現(xiàn)在切換一下賬號(hào)到 admin,目的是為 acm 這個(gè)賬戶(hù)賦值。 ( 5)重新回到 admin,來(lái)測(cè)試一系列功能,首先測(cè)試 CREATE; 山東科技大學(xué)學(xué)生課程設(shè)計(jì) 然后再創(chuàng)建一次 提示名字重復(fù)。 ( 9) Update 測(cè)試 山東科技大學(xué)學(xué)生課程設(shè)計(jì) ( 10) delete 操作 把年齡為 18 的砍掉 ( 11) Alter 測(cè)試 增加老師這一列。 我對(duì)文件流操作一直不熟,自己去網(wǎng)上百度學(xué)習(xí)了一下感覺(jué)還比較好用。 包括自己去答辯的時(shí)候,老師告訴了我正則表達(dá)式,這是一種很方便的判斷字符串的方法,相對(duì)于自己寫(xiě)的字符串處理很多很多情況都沒(méi)法處理到,既麻煩,又不高效。繼續(xù)加油提高代碼能力。 int main() { _enter Enter。 return 0。 class Anal_Word{ private: vector string word。 // 把輸入的一個(gè)字符串進(jìn)行分析成每一個(gè)單詞 void show()。 // 把分析出來(lái)的單詞返回 }。 i (int)()。 } vector string Anal_Word:: get_word(){ return word。39。 string _begin。 int mark = 0。 for(int i = 0。 i++){ // if(!isdigit(s[i]) amp。 !isalpha(s[i]) amp。 s[i] != 39。 amp。 s[i] != 39。 amp。 s[i] != 39。 amp。 s[i] != 39。 amp。 s[i] != 39。 amp。 s[i] != 39。){ // return 0。 39。amp。,39。amp。(39。amp。)39。amp。\t39。amp。39。amp。\n39。 if(s[i] == 39。) { bracket ++。)39。 } if(s[i] 0) return 0。,39。)39。 39。(39。39。\t39。\n39。amp。amp。amp。\t39。 ()。,39。amp。amp。\t39。 } 山東科技大學(xué)學(xué)生課程設(shè)計(jì) if(bracket != 0) return 0。 for(int i = 0。 i++){ if(wh[i+1] wh[i] 1) return 0。amp。 return 1。 /* CREATE TABLE STUDENT ( NAME CHAR(80) UNIQUE, AGE NUMERIC(30, 20), NUM INT PRIMARY KEY, COU INT UNIQUE )。 */ string power[100] = {,SELECT, UPDATE, CREATE, INSERT, DELETE, UPDATE, ALTER}。 class _enter{ public: _enter() {} void _begin()。 山東科技大學(xué)學(xué)生課程設(shè)計(jì) int op。 _file file。 int enter_interface(){ printf(++\n)。 printf(| Wele To My Sql |\n)。 printf(| |\n)。 printf(| |\n)。 printf(| |\n)。 printf(Write 1 to 39。, Write 2 to 39。, Write 3 to 39。\n\n)。 scanf(%d, amp。 if(op == 1){ int _count = 0。 cin user_name。 cin user_pass。 else printf(Sucess! You can add the power to other user!\n)。 } _count++。 return 0。 } return 1。 while(true){ printf(UserName: )。 printf(Paseword: )。 string two_pass。 cin two_pass。 else if((user_name)) printf(Account already exists\n)。 (user_name, user_pass)。 } _count++。 return 0。 }else if(op == 3){ return 0。 } } } void _enter::_begin(){ ()。 // ()。power_id[HELP] = 7。 power_id[INSERT] = 2。power_id[UPDATE] = 3。 int __ok = enter_interface()。 printf(++\n)。 printf(| |\n)。 printf(| Grand/Revoke |\n)。help database39。 printf(| 39。39。 printf(| operation is caseinsensitive |\n)。Say you
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1