線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1719
推到 Plurk!
推到 Facebook!

資料庫管理的問題

尚未結案
orillys
一般會員


發表:20
回覆:26
積分:9
註冊:2004-04-19

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-04-26 20:16:33 IP:218.168.xxx.xxx 未訂閱
小弟參考了站上的文章,已經可以針對一個資料庫做簡單的管理的工作,目前突發奇想,想對SERVER做出新增資料庫(create database)跟新增資料表(create table)的動作,但是卻不知從何下手,不知哪位大大可以提供相關資料!
bigdogchina
版主


發表:238
回覆:523
積分:312
註冊:2003-04-28

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-04-26 23:47:32 IP:211.162.xxx.xxx 未訂閱
orillys大大,您好! 不好意思,沒有能理解您的意思,不知道您是使用什麽樣的資料庫呢?如果您是使用下面的兩種資料庫:Access2000和SQL Server2000,那請您看一看,好嗎: 對於Access2000而言,利用程式來直接新增資料庫,站上的bruce0211版主大大有非常詳細的描述(具體的地址我忘了,bruce0211大大別打我呀),下面的是>■ class="code"> void __fastcall TForm1::Button1Click(TObject *Sender) { Variant AccessMDB ; //ADOX 物件 AnsiString ConnectionString; //連接字串 AnsiString MDBFileName; //MDBFileNmae = ExtractFilePath(Application->ExeName) "test.mdb"; //MDB 檔產生位置 MDBFileName = "test.mdb"; //MDB 檔產生位置 ConnectionString = "Provider = Microsoft.Jet.OLEDB.4.0; Data Source = " MDBFileName; //設定連接字串 AccessMDB = Variant::CreateObject("ADOX.Catalog"); //取得物件 if (FileExists(MDBFileName)) DeleteFile(MDBFileName); AccessMDB.OleProcedure("Create",ConnectionString.c_str()); //建立檔案 AccessMDB = Unassigned; } 執行後,按下按鈕即可產生一空白的 test.mdb 檔案 ■ BCB 5.0 由於 BCB 5.0 並未對 ADOX 物件有現成的宣告式 , 所以稍微麻煩點 , 要自行建立一個名為 ADOX_TLB.h 的宣告檔 , 步驟如下 1. 開啟 BCB 5.0 , 照以上 BCB 6.0 步驟全部做一次 , 完成後不要急著 run (會出現錯誤) 2. Select Project | Import Type Library 3. Choose "Microsoft ADO Ext 2.x for DDL and Security (Version 2.x)" 4. Change "TTable" to "TADOXTable" 5. Change "TColumn" to "TADOXColumn" 6. Change "TIndex" to "TADOXIndex" 7. Press "Create Unit" button to Create ADOX_TLB.cpp & ADOX_TLB.h 8. Close "Import Type Library" window 9. 在主程式 Unit1.cpp 單元前面 , 插入一行宣告 #include "ADOX_TLB.h" 即可 run 如果要在Access2000中新增資料表呢?站上也有大大已經回答了,請參考: http://delphi.ktop.com.tw/topic.php?topic_id=24600 而對於SQL Server2000而言,您可以使用SQL語句來創建一個新的資料庫,其SQL語句如下(假設您創建的資料庫名爲:學生管理資料庫): CREATE DATABASE 學生管理資料庫 ON( NAME = '測試資料庫', FILENAME = 'C:\Microsoft SQL Server 2000\MSSQL\DATA\學生管理資料庫.MDF', SIZE = 1MB, MAXSIZE = 50MB, FILEGROWTH = 5MB, ) LOG ON( NAMe = '學生管理日誌', FILENAME = 'C:\Microsoft SQL Server 2000\MSSQL\DATA\學生管理日誌.LDF', SIZE = 1MB, MAXSIZE = 5MB, FILEGROWTH = 10% ) 同理,在SQL Server2000中新增資料表也使用來SQL語句來完成: CREATE TABLE 學生情況表( 學號 int NOT NULL PRIMARY KEY, 姓名 char(8), 性別 char(2), 年齡 tinyint, 專業 char(30), 家庭地址 char(50) ) 我也是一知半解,請您多多指教![:]]

===============
人生在勤,不索何获? 
===============
------
人生在勤,不索何获?
orillys
一般會員


發表:20
回覆:26
積分:9
註冊:2004-04-19

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-04-27 03:40:44 IP:218.168.xxx.xxx 未訂閱
感謝bigdogchina大大指導,忘了說小弟的平台,小弟是用BCB6 MySQL (LINUX),不過大大提出來的技巧,小弟還是學起來,畢竟不能只會同一種模式,只是不知道對於MYSQL ON LINUX 是否合用?! 先來TRY一下好了
bigdogchina
版主


發表:238
回覆:523
積分:312
註冊:2003-04-28

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-04-27 14:58:01 IP:211.162.xxx.xxx 未訂閱
orillys大大,不好意思,我沒有使用MySQL的經驗,不清楚MySQL的語法規則,下面是我在網上找到的MySQL相關資料,希望能對您有所幫助 < src="http://delphi.ktop.com.tw/loadfile.php?TOPICID=15361427&CC=343553"> 下面的文章講述了如何在MySQL中新建資料庫和資料表: http://www.ddvip.net/database/mysql/16.htm http://www.ddvip.net/database/mysql/17.htm http://www.ddvip.net/database/mysql/18.htm http://www.ddvip.net/database/mysql/19.htm 最後,再一次表示抱歉,不好意思 < class="code"> =============== 人生在勤,不索何获? ===============
------
人生在勤,不索何获?
orillys
一般會員


發表:20
回覆:26
積分:9
註冊:2004-04-19

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-04-27 17:40:17 IP:218.168.xxx.xxx 未訂閱
大大不用道歉啦,小弟很開心可以跟您討論,也很高興收到大大提供的資料! 不過小弟是想以> #>>>>>>>>>>>>>>Text="create Database ">Text; SQLQuery1->Open(); SQLQuery1->Close(); } //--------------------------------------------------------------------------- 結果傳回一個錯誤訊息: SQLQuery1:Cursor not returned from query! 但是新的DBS確實是有建立起來,不清楚是哪裡的問題,而且這樣做也覺得怪怪的,先登入一個資料庫後,在去CREATE另一個資料庫,小弟試著把SQLConnection1->Params->Values["Database"]="try";這行註解掉 但是出現DBS設定錯誤訊息,不知道哪位大大知道如何解決,或是有其他辦法或作法可以提供一下,感激不盡! bigdogchina大大,不用道歉啦,小弟真的很感激您提供的資料!!
系統時間:2024-04-30 13:15:14
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!